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);
172 extern float modff (
float __x,
float *__iptr);
177 extern double sqrt(
double __x) __ATTR_CONST__;
178 extern float sqrtf (
float) __ATTR_CONST__;
183 extern
double cbrt(
double __x) __ATTR_CONST__;
194 extern double hypot (
double __x,
double __y) __ATTR_CONST__;
202 extern double square(
double __x) __ATTR_CONST__;
203 #define squaref square
209 extern double floor(
double __x) __ATTR_CONST__;
216 extern double ceil(
double __x) __ATTR_CONST__;
234 extern double frexp(
double __x,
int *__pexp);
242 extern double ldexp(
double __x,
int __exp) __ATTR_CONST__;
248 extern double exp(
double __x) __ATTR_CONST__;
254 extern double cosh(
double __x) __ATTR_CONST__;
260 extern double sinh(
double __x) __ATTR_CONST__;
266 extern double tanh(
double __x) __ATTR_CONST__;
274 extern double acos(
double __x) __ATTR_CONST__;
282 extern double asin(
double __x) __ATTR_CONST__;
289 extern double atan(
double __x) __ATTR_CONST__;
298 extern double atan2(
double __y,
double __x) __ATTR_CONST__;
304 extern double log(
double __x) __ATTR_CONST__;
310 extern double log10(
double __x) __ATTR_CONST__;
316 extern double pow(
double __x,
double __y) __ATTR_CONST__;
323 extern int isnan(
double __x) __ATTR_CONST__;
333 extern int isinf(
double __x) __ATTR_CONST__;
340 __ATTR_CONST__
static inline int isfinite (
double __x)
350 return __exp != 0xff;
352 #define isfinitef isfinite
358 __ATTR_CONST__
static inline double copysign (
double __x,
double __y)
364 :
"0" (__x),
"r" (__y) );
367 #define copysignf copysign
376 extern int signbit (
double __x) __ATTR_CONST__;
377 #define signbitf signbit
383 extern double fdim (
double __x,
double __y) __ATTR_CONST__;
392 extern double fma (
double __x,
double __y,
double __z) __ATTR_CONST__;
400 extern double fmax (
double __x,
double __y) __ATTR_CONST__;
408 extern double fmin (
double __x,
double __y) __ATTR_CONST__;
415 extern double trunc (
double __x) __ATTR_CONST__;
426 extern double round (
double __x) __ATTR_CONST__;
439 extern long lround (
double __x) __ATTR_CONST__;
440 #define lroundf lround
453 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:340
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:358
double modf(double __x, double *__iptr)
double atan2(double __y, double __x)