1 #include <math.h>
2 #include <stdio.h>
3
4 #define TEST(M_) printf("%-24s%+2.13f\n", #M_, M_)
5 #define TESTI(M_) printf("%-24s%d\n", #M_, M_)
6
7 int
main(void)8 main(void)
9 {
10 TEST(M_E);
11 TEST(M_LOG2E);
12 TEST(M_LOG10E);
13 TEST(M_LN2);
14 TEST(M_LN10);
15 TEST(M_PI);
16 TEST(M_PI_2);
17 TEST(M_PI_4);
18 TEST(M_1_PI);
19 TEST(M_2_PI);
20 TEST(M_2_SQRTPI);
21 TEST(M_SQRT2);
22 TEST(M_SQRT1_2);
23
24 TEST(cos(M_PI_2));
25 TEST(acos(cos(M_PI_2)));
26 TEST(cosh(M_SQRT1_2));
27 TEST(acosh(cosh(M_SQRT1_2)));
28 TEST(sin(M_PI_2));
29 TEST(asin(sin(M_PI_2)));
30 TEST(sinh(M_PI_2));
31 TEST(asinh(sinh(M_PI_2)));
32 TEST(tan(M_SQRT2));
33 TEST(atan(tan(M_SQRT2)));
34 TEST(tanh(M_SQRT2));
35 TEST(atanh(tanh(M_SQRT2)));
36 TEST(atan2(M_SQRT2, M_SQRT2));
37 TEST(cbrt(8.0));
38 TEST(ceil(M_PI));
39 TEST(ceil(M_E));
40 TEST(copysign(-2.0, 10.0));
41 TEST(copysign(2.0, -10.0));
42 TEST(erf(M_SQRT1_2));
43 TEST(erfc(M_SQRT1_2));
44 TEST(exp(M_PI_4));
45 TEST(exp2(3.0));
46 TEST(expm1(M_PI_4));
47 TEST(fabs(-M_SQRT2));
48 TEST(fabs(M_SQRT2));
49 TEST(fdim(M_PI, M_PI_2));
50 TEST(fdim(M_PI, -M_PI_2));
51 TESTI(finite(1.0 / 0.0));
52 TEST(floor(M_PI));
53 TEST(floor(M_E));
54 TEST(fma(M_PI, M_E, M_SQRT2));
55 TEST(fmax(M_PI, M_E));
56 TEST(fmin(M_PI, M_E));
57 TEST(fmod(100.5, 10.0));
58 TEST(gamma(5.0));
59 TEST(hypot(3.0, 4.0));
60 printf("%-24s%d\n", "ilogb(10.0)", ilogb(10.0));
61 TESTI(isinf(1.0 / 0.0));
62 TESTI(isnan(log(-1.0)));
63 TEST(j0(M_PI));
64 TEST(j1(M_PI));
65 TEST(jn(3, M_PI));
66 TEST(lgamma(M_PI));
67 TEST(log(M_E));
68 TEST(log10(100.0));
69 TEST(log1p(M_PI));
70 TEST(nan(""));
71 #ifdef notyet
72 // XXX: vax
73 TEST(nextafter(1.0e-14, 1.0));
74 #endif
75 TEST(pow(M_SQRT2, 2.0));
76 TEST(remainder(M_PI, M_E));
77 TEST(rint(M_PI));
78 TEST(rint(M_E));
79 printf("%-24s%+2.13f\n", "scalbn(1.0, 2)", scalbn(1.0, 2));
80 TEST(sin(M_PI_4));
81 TEST(sinh(M_PI_4));
82 TEST(sqrt(9.0));
83 TEST(tan(M_PI_4));
84 TEST(tanh(M_PI_4));
85 TEST(trunc(M_PI));
86 TEST(trunc(M_E));
87 TEST(y0(M_PI));
88 TEST(y1(M_PI));
89 TEST(yn(3, M_PI));
90
91 return 0;
92 }
93