1 /* The <math.h> header contains prototypes for mathematical functions. */
10 #define INFINITY (__infinity())
11 #define NAN (__qnan())
12 #define HUGE_VAL INFINITY
14 /* Function Prototypes. */
15 _PROTOTYPE( double __infinity
, (void) );
16 _PROTOTYPE( double __qnan
, (void) );
18 _PROTOTYPE( double acos
, (double _x
) );
19 _PROTOTYPE( double asin
, (double _x
) );
20 _PROTOTYPE( double atan
, (double _x
) );
21 _PROTOTYPE( double atan2
, (double _y
, double _x
) );
22 _PROTOTYPE( double ceil
, (double _x
) );
23 _PROTOTYPE( double cos
, (double _x
) );
24 _PROTOTYPE( double cosh
, (double _x
) );
25 _PROTOTYPE( double exp
, (double _x
) );
26 _PROTOTYPE( double fabs
, (double _x
) );
27 _PROTOTYPE( float fabsf
, (float _x
) );
28 _PROTOTYPE( double floor
, (double _x
) );
29 _PROTOTYPE( double fmod
, (double _x
, double _y
) );
30 _PROTOTYPE( double frexp
, (double _x
, int *_exp
) );
31 _PROTOTYPE( double ldexp
, (double _x
, int _exp
) );
32 _PROTOTYPE( double log
, (double _x
) );
33 _PROTOTYPE( double log10
, (double _x
) );
34 _PROTOTYPE( double modf
, (double _x
, double *_iptr
) );
35 _PROTOTYPE( double pow
, (double _x
, double _y
) );
36 _PROTOTYPE( double rint
, (double _x
) );
37 _PROTOTYPE( double scalbn
, (double _x
, int _exp
) );
38 _PROTOTYPE( float scalbnf
, (float _x
, int _exp
) );
39 _PROTOTYPE( double scalbln
, (double _x
, long _exp
) );
40 _PROTOTYPE( float scalblnf
, (float _x
, long _exp
) );
41 _PROTOTYPE( double sin
, (double _x
) );
42 _PROTOTYPE( double sinh
, (double _x
) );
43 _PROTOTYPE( double sqrt
, (double _x
) );
44 _PROTOTYPE( double tan
, (double _x
) );
45 _PROTOTYPE( double tanh
, (double _x
) );
46 _PROTOTYPE( double hypot
, (double _x
, double _y
) );
48 #ifdef _POSIX_SOURCE /* STD-C? */
49 #include <mathconst.h>
54 #define FP_SUBNORMAL 4
57 _PROTOTYPE( int fpclassify
, (double x
) );
58 _PROTOTYPE( int isfinite
, (double x
) );
59 _PROTOTYPE( int isinf
, (double x
) );
60 _PROTOTYPE( int isnan
, (double x
) );
61 _PROTOTYPE( int isnormal
, (double x
) );
62 _PROTOTYPE( int signbit
, (double x
) );
63 _PROTOTYPE( int isgreater
, (double x
, double y
) );
64 _PROTOTYPE( int isgreaterequal
, (double x
, double y
) );
65 _PROTOTYPE( int isless
, (double x
, double y
) );
66 _PROTOTYPE( int islessequal
, (double x
, double y
) );
67 _PROTOTYPE( int islessgreater
, (double x
, double y
) );
68 _PROTOTYPE( int isunordered
, (double x
, double y
) );
69 _PROTOTYPE( double nearbyint
, (double x
) );
70 _PROTOTYPE( double remainder
, (double x
, double y
) );
71 _PROTOTYPE( double trunc
, (double x
) );
74 /* The following definitions are not implemented in the ACK math lib.
75 * We allow them in the GNU compiler because they are builtins there.
78 _PROTOTYPE( float powf
, (float, float) );
79 _PROTOTYPE( float fmodf
, (float, float) );
80 _PROTOTYPE( double erf
, (double) );
81 _PROTOTYPE( double erfc
, (double) );
82 _PROTOTYPE( double gamma
, (double) );
83 _PROTOTYPE( double j0
, (double) );
84 _PROTOTYPE( double j1
, (double) );
85 _PROTOTYPE( double jn
, (int, double) );
86 _PROTOTYPE( double lgamma
, (double) );
87 _PROTOTYPE( double y0
, (double) );
88 _PROTOTYPE( double y1
, (double) );
89 _PROTOTYPE( double yn
, (int, double) );
90 _PROTOTYPE( double acosh
, (double) );
91 _PROTOTYPE( double asinh
, (double) );
92 _PROTOTYPE( double atanh
, (double) );
93 _PROTOTYPE( double cbrt
, (double) );
94 _PROTOTYPE( double expm1
, (double) );
95 _PROTOTYPE( int ilogb
, (double) );
96 _PROTOTYPE( double log1p
, (double) );
97 _PROTOTYPE( double logb
, (double) );
98 _PROTOTYPE( double nextafter
, (double, double) );
99 _PROTOTYPE( double scalb
, (double, double) );