1 #ifndef __ZMATH_H 2 #define __ZMATH_H 3 4 #include <errno.h> 5 6 #define NUM 3 7 #define NAN 2 8 #define INF 1 9 10 #define __PI 3.14159265358979323846 11 #define __SQRT_HALF 0.70710678118654752440 12 #define __PI_OVER_TWO 1.57079632679489661923132 13 14 extern double BIGX; 15 extern double SMALLX; 16 17 typedef const union 18 { 19 long l[2]; 20 double d; 21 } udouble; 22 23 typedef const union 24 { 25 long l; 26 float f; 27 } ufloat; 28 29 extern double BIGX; 30 extern double SMALLX; 31 32 extern udouble z_infinity; 33 extern udouble z_notanum; 34 extern double z_rooteps; 35 36 extern ufloat z_infinity_f; 37 extern ufloat z_notanum_f; 38 extern float z_rooteps_f; 39 40 /* Core math routines. */ 41 42 int _EXFUN (numtest, (double)); 43 int _EXFUN (numtestf, (float)); 44 double _EXFUN (logarithm, (double, int)); 45 float _EXFUN (logarithmf, (float, int)); 46 double _EXFUN (sine, (double, int)); 47 float _EXFUN (sinef, (float, int)); 48 double _EXFUN (asine, (double, int)); 49 float _EXFUN (asinef, (float, int)); 50 double _EXFUN (atangent, (double, double, double, int)); 51 float _EXFUN (atangentf, (float, float, float, int)); 52 double _EXFUN (sineh, (double, int)); 53 float _EXFUN (sinehf, (float, int)); 54 55 #endif /* no __ZMATH_H */ 56