PR inline-asm/84742
[official-gcc.git] / gcc / testsuite / gcc.c-torture / execute / pr39228.c
blobad0d3769cdf7ef55f6a207478f5b4a931fe90ed1
1 /* { dg-add-options ieee } */
2 /* { dg-skip-if "No Inf/NaN support" { spu-*-* } } */
4 extern void abort (void);
6 static inline int __attribute__((always_inline)) testf (float b)
8 float c = 1.01f * b;
10 return __builtin_isinff (c);
13 static inline int __attribute__((always_inline)) test (double b)
15 double c = 1.01 * b;
17 return __builtin_isinf (c);
20 static inline int __attribute__((always_inline)) testl (long double b)
22 long double c = 1.01L * b;
24 return __builtin_isinfl (c);
27 int main()
29 if (testf (__FLT_MAX__) < 1)
30 abort ();
32 if (test (__DBL_MAX__) < 1)
33 abort ();
35 if (testl (__LDBL_MAX__) < 1)
36 abort ();
38 return 0;