int igt (float x, float y, int ok) { TEST (ORD (x, y) && UNGT (x, y)); /* Not optimized */ TEST ((x >= y) && (x != y)); TEST ((x >= y) && (y != x)); TEST ((x != y) && (x >= y)); /* Not optimized */ TEST ((y != x) && (x >= y)); /* Not optimized */ }
int iungt (float x, float y, int ok) { TEST (UNGT (x, y)); TEST (UNORD (x, y) || (x > y)); }
int iltgt (float x, float y, int ok) { TEST (!UNEQ (x, y)); /* Not optimizable. */ TEST (LTGT (x, y)); /* Same, __builtin_islessgreater does not trap. */ TEST (ORD (x, y) && (UNLT (x, y) || UNGT (x,y))); }
int ine (float x, float y, int ok) { TEST (UNLT (x, y) || UNGT (x, y)); }
static void ine (float x, float y, int ok) { TEST (UNLT (x, y) || UNGT (x, y)); }