71 #define M_E 2.7182818284590452354
74 #define M_LOG2E 1.4426950408889634074
77 #define M_LOG10E 0.43429448190325182765
80 #define M_LN2 0.69314718055994530942
83 #define M_LN10 2.30258509299404568402
86 #define M_PI 3.14159265358979323846
89 #define M_PI_2 1.57079632679489661923
92 #define M_PI_4 0.78539816339744830962
95 #define M_1_PI 0.31830988618379067154
98 #define M_2_PI 0.63661977236758134308
101 #define M_2_SQRTPI 1.12837916709551257390
104 #define M_SQRT2 1.41421356237309504880
107 #define M_SQRT1_2 0.70710678118654752440
110 #define NAN __builtin_nan("")
113 #define INFINITY __builtin_inf()
116 #ifndef __ATTR_CONST__
117 # define __ATTR_CONST__ __attribute__((__const__))
127 extern double cos(
double __x) __ATTR_CONST__;
133 extern double sin(
double __x) __ATTR_CONST__;
139 extern double tan(
double __x) __ATTR_CONST__;
146 extern double fabs(
double __x) __ATTR_CONST__;
153 extern double fmod(
double __x,
double __y) __ATTR_CONST__;
168 extern double modf(
double __x,
double *__iptr);
171 extern float modff (
float __x,
float *__iptr);
176 extern double sqrt(
double __x) __ATTR_CONST__;
179 extern float sqrtf (
float) __ATTR_CONST__;
184 extern
double cbrt(
double __x) __ATTR_CONST__;
195 extern double hypot (
double __x,
double __y) __ATTR_CONST__;
203 extern double square(
double __x) __ATTR_CONST__;
204 #define squaref square
210 extern double floor(
double __x) __ATTR_CONST__;
217 extern double ceil(
double __x) __ATTR_CONST__;
235 extern double frexp(
double __x,
int *__pexp);
243 extern double ldexp(
double __x,
int __exp) __ATTR_CONST__;
249 extern double exp(
double __x) __ATTR_CONST__;
255 extern double cosh(
double __x) __ATTR_CONST__;
261 extern double sinh(
double __x) __ATTR_CONST__;
267 extern double tanh(
double __x) __ATTR_CONST__;
275 extern double acos(
double __x) __ATTR_CONST__;
283 extern double asin(
double __x) __ATTR_CONST__;
290 extern double atan(
double __x) __ATTR_CONST__;
299 extern double atan2(
double __y,
double __x) __ATTR_CONST__;
305 extern double log(
double __x) __ATTR_CONST__;
311 extern double log10(
double __x) __ATTR_CONST__;
317 extern double pow(
double __x,
double __y) __ATTR_CONST__;
324 extern int isnan(
double __x) __ATTR_CONST__;
334 extern int isinf(
double __x) __ATTR_CONST__;
341 __ATTR_CONST__
static inline int isfinite (
double __x)
351 return __exp != 0xff;
353 #define isfinitef isfinite
359 __ATTR_CONST__
static inline double copysign (
double __x,
double __y)
365 :
"0" (__x),
"r" (__y) );
368 #define copysignf copysign
377 extern int signbit (
double __x) __ATTR_CONST__;
378 #define signbitf signbit
384 extern double fdim (
double __x,
double __y) __ATTR_CONST__;
393 extern double fma (
double __x,
double __y,
double __z) __ATTR_CONST__;
401 extern double fmax (
double __x,
double __y) __ATTR_CONST__;
409 extern double fmin (
double __x,
double __y) __ATTR_CONST__;
416 extern double trunc (
double __x) __ATTR_CONST__;
427 extern double round (
double __x) __ATTR_CONST__;
440 extern long lround (
double __x) __ATTR_CONST__;
441 #define lroundf lround
454 extern long lrint (
double __x) __ATTR_CONST__;
double ldexp(double __x, int __exp)
float modff(float __x, float *__iptr)
static int isfinite(double __x)
Definition: math.h:341
double fmod(double __x, double __y)
double fmin(double __x, double __y)
double fdim(double __x, double __y)
double square(double __x)
double hypot(double __x, double __y)
double fmax(double __x, double __y)
double pow(double __x, double __y)
double frexp(double __x, int *__pexp)
double fma(double __x, double __y, double __z)
static double copysign(double __x, double __y)
Definition: math.h:359
double modf(double __x, double *__iptr)
double atan2(double __y, double __x)