1f08c3bdfSopenharmony_ci#define SMAX __INT_MAX__ 2f08c3bdfSopenharmony_ci#define SMIN (-__INT_MAX__-1) 3f08c3bdfSopenharmony_ci 4f08c3bdfSopenharmony_ciint le_smax(int a) { return (a <= (SMAX - 1)) == (a != SMAX); } 5f08c3bdfSopenharmony_ciint gt_smax(int a) { return (a > (SMAX - 1)) == (a == SMAX); } 6f08c3bdfSopenharmony_ci 7f08c3bdfSopenharmony_ciint lt_smin(int a) { return (a < (SMIN + 1)) == (a == SMIN); } 8f08c3bdfSopenharmony_ciint ge_smin(int a) { return (a >= (SMIN + 1)) == (a != SMIN); } 9f08c3bdfSopenharmony_ci 10f08c3bdfSopenharmony_ci/* 11f08c3bdfSopenharmony_ci * check-name: canonical-cmpe-minmax 12f08c3bdfSopenharmony_ci * check-command: test-linearize -Wno-decl $file 13f08c3bdfSopenharmony_ci * 14f08c3bdfSopenharmony_ci * check-output-ignore 15f08c3bdfSopenharmony_ci * check-output-returns: 1 16f08c3bdfSopenharmony_ci */ 17