Home | History | Annotate | Line # | Download | only in libm
h_lualibm.c revision 1.1
      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
      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 	TEST(nextafter(1.0e-14, 1.0));
     72 	TEST(pow(M_SQRT2, 2.0));
     73 	TEST(remainder(M_PI, M_E));
     74 	TEST(rint(M_PI));
     75 	TEST(rint(M_E));
     76 	printf("%-24s%+2.13f\n", "scalbn(1.0,2)", scalbn(1.0, 2));
     77 	TEST(sin(M_PI_4));
     78 	TEST(sinh(M_PI_4));
     79 	TEST(sqrt(9.0));
     80 	TEST(tan(M_PI_4));
     81 	TEST(tanh(M_PI_4));
     82 	TEST(trunc(M_PI));
     83 	TEST(trunc(M_E));
     84 	TEST(y0(M_PI));
     85 	TEST(y1(M_PI));
     86 	TEST(yn(3, M_PI));
     87 
     88 	return 0;
     89 }
     90