OSDN Git Service

* gcc.c-torture/execute/960321-1.x: Remove.
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.c-torture / execute / ieee / fp-cmp-2.c
1 #ifndef SIGNAL_SUPPRESS
2 #include <signal.h>
3 #endif
4
5 float fnan = 1.0f/0.0f - 1.0f/0.0f;
6 float x = 1.0f;
7
8 void leave ()
9 {
10   exit (0);
11 }
12
13 main ()
14 {
15 #if ! defined (__vax__) && ! defined (_CRAY)
16   /* Move this line earlier, for architectures (like alpha) that issue 
17      SIGFPE on the first comparisons. */
18 #ifndef SIGNAL_SUPPRESS
19   /* Some machines catches a SIGFPE when a NaN is compared.
20      Let this test succeed o such machines.  */
21   signal (SIGFPE, leave);
22 #endif
23   /* NaN is an IEEE unordered operand.  All these test should be false.  */
24   if (fnan == fnan)
25     abort ();
26   if (fnan != x)
27     x = 1.0;
28   else
29     abort ();
30
31   if (fnan < x)
32     abort ();
33   if (fnan > x)
34     abort ();
35   if (fnan <= x)
36     abort ();
37   if (fnan >= x)
38     abort ();
39   if (fnan == x)
40     abort ();
41 #endif
42   exit (0);
43 }