1 /* { dg-do run { xfail powerpc*-*-* } } */ 2 /* { dg-add-options ieee } */ 3 /* { dg-require-effective-target fenv_exceptions } */ 4 /* { dg-skip-if "fenv" { powerpc-ibm-aix* } } */ 5 6 #include <fenv.h> 7 8 int 9 __attribute__ ((noinline, noclone)) f1(float a,float b)10f1 (float a, float b) 11 { 12 return -__builtin_isgreater (a, b); 13 } 14 15 int 16 __attribute__ ((noinline, noclone)) f2(float a,float b)17f2 (float a, float b) 18 { 19 return -(a > b); 20 } 21 22 int main(void)23main (void) 24 { 25 volatile int r; 26 27 float nanf = __builtin_nanf (""); 28 float argf = 1.0f; 29 30 feclearexcept (FE_INVALID); 31 32 r = f1 (nanf, argf); 33 if (r != 0 || fetestexcept (FE_INVALID)) 34 __builtin_abort (); 35 36 r = f2 (nanf, argf); 37 if (r != 0 || !fetestexcept (FE_INVALID)) 38 __builtin_abort (); 39 40 return 0; 41 } 42