OSDN Git Service

Index: gcc/ChangeLog
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / c99-math.h
1 #include <math.h>
2
3 extern void abort(void);
4
5 #define C99_MATH_TESTS(nan, inf, huge, norm, sub, zero) \
6 {                                                       \
7   if (fpclassify (nan) != FP_NAN)                       \
8     abort ();                                           \
9                                                         \
10   if (fpclassify (inf) != FP_INFINITE)                  \
11     abort ();                                           \
12                                                         \
13   if (fpclassify (huge) != FP_INFINITE)                 \
14     abort ();                                           \
15                                                         \
16   if (fpclassify (norm) != FP_NORMAL)                   \
17     abort ();                                           \
18                                                         \
19   if (fpclassify (sub) != FP_SUBNORMAL)                 \
20     abort ();                                           \
21                                                         \
22   if (fpclassify (zero) != FP_ZERO)                     \
23     abort ();                                           \
24                                                         \
25                                                         \
26   if (!isnan (nan))                                     \
27     abort ();                                           \
28                                                         \
29   if (isnan (inf))                                      \
30     abort ();                                           \
31                                                         \
32   if (isnan (huge))                                     \
33     abort ();                                           \
34                                                         \
35   if (isnan (norm))                                     \
36     abort ();                                           \
37                                                         \
38   if (isnan (sub))                                      \
39     abort ();                                           \
40                                                         \
41   if (isnan (zero))                                     \
42     abort ();                                           \
43                                                         \
44                                                         \
45   if (isinf (nan))                                      \
46     abort ();                                           \
47                                                         \
48   if (!isinf (inf))                                     \
49     abort ();                                           \
50                                                         \
51   if (!isinf (huge))                                    \
52     abort ();                                           \
53                                                         \
54   if (isinf (norm))                                     \
55     abort ();                                           \
56                                                         \
57   if (isinf (sub))                                      \
58     abort ();                                           \
59                                                         \
60   if (isinf (zero))                                     \
61     abort ();                                           \
62                                                         \
63                                                         \
64   if (isfinite (nan))                                   \
65     abort ();                                           \
66                                                         \
67   if (isfinite (inf))                                   \
68     abort ();                                           \
69                                                         \
70   if (isfinite (huge))                                  \
71     abort ();                                           \
72                                                         \
73   if (!isfinite (norm))                                 \
74     abort ();                                           \
75                                                         \
76   if (!isfinite (sub))                                  \
77     abort ();                                           \
78                                                         \
79   if (!isfinite (zero))                                 \
80     abort ();                                           \
81                                                         \
82                                                         \
83   if (isnormal (nan))                                   \
84     abort ();                                           \
85                                                         \
86   if (isnormal (inf))                                   \
87     abort ();                                           \
88                                                         \
89   if (isnormal (huge))                                  \
90     abort ();                                           \
91                                                         \
92   if (!isnormal (norm))                                 \
93     abort ();                                           \
94                                                         \
95   if (isnormal (sub))                                   \
96     abort ();                                           \
97                                                         \
98   if (isnormal (zero))                                  \
99     abort ();                                           \
100                                                         \
101                                                         \
102   if (signbit (norm))                                   \
103     abort ();                                           \
104                                                         \
105   if (!signbit (-(norm)))                               \
106     abort ();                                           \
107                                                         \
108                                                         \
109   if (!isgreater ((inf), (norm)))                       \
110     abort ();                                           \
111                                                         \
112   if (!isgreaterequal ((inf), (huge)))                  \
113     abort ();                                           \
114                                                         \
115   if (!isless ((norm), (inf)))                          \
116     abort ();                                           \
117                                                         \
118   if (!islessequal ((huge), (inf)))                     \
119     abort ();                                           \
120                                                         \
121   if (!islessgreater ((inf), (norm)))                   \
122     abort ();                                           \
123                                                         \
124   if (!isunordered ((nan), (norm)))                     \
125     abort ();                                           \
126 }