#include <stdint.h>
#include <float.h>
#include <math.h>
#include "endian.h"
Go to the source code of this file.
|
| #define | WANT_ROUNDING 1 |
| #define | WANT_SNAN 0 |
| #define | issignalingf_inline(x) |
| #define | issignaling_inline(x) |
| #define | TOINT_INTRINSICS 0 |
| #define | predict_true(x) |
| #define | predict_false(x) |
| #define | fp_barrierf fp_barrierf |
| #define | fp_barrier fp_barrier |
| #define | fp_barrierl fp_barrierl |
| #define | _UNUSED(expr) |
| #define | fp_force_evalf fp_force_evalf |
| #define | fp_force_eval fp_force_eval |
| #define | fp_force_evall fp_force_evall |
| #define | FORCE_EVAL(x) |
| #define | asuint(f) |
| #define | asfloat(i) |
| #define | asuint64(f) |
| #define | asdouble(i) |
| #define | EXTRACT_WORDS(hi, lo, d) |
| #define | GET_HIGH_WORD(hi, d) |
| #define | GET_LOW_WORD(lo, d) |
| #define | INSERT_WORDS(d, hi, lo) |
| #define | SET_HIGH_WORD(d, hi) |
| #define | SET_LOW_WORD(d, lo) |
| #define | GET_FLOAT_WORD(w, d) |
| #define | SET_FLOAT_WORD(d, w) |
|
| static float | eval_as_float (float x) |
| static double | eval_as_double (double x) |
| static float | fp_barrierf (float x) |
| static double | fp_barrier (double x) |
| static long double | fp_barrierl (long double x) |
| static void | fp_force_evalf (float x) |
| static void | fp_force_eval (double x) |
| static void | fp_force_evall (long double x) |
| int | __rem_pio2_large (double *, double *, int, int, int) |
| int | __rem_pio2 (double, double *) |
| double | __k_sin (double, double, int) |
| double | __k_cos (double, double) |
| double | __k_tan (double, double, int) |
| double | __expo2 (double, double) |
| int | __rem_pio2f (float, double *) |
| float | __k_sindf (double) |
| float | __k_cosdf (double) |
| float | __k_tandf (double, int) |
| float | __expo2f (float, float) |
| int | __rem_pio2l (long double, long double *) |
| long double | __k_sinl (long double, long double, int) |
| long double | __k_cosl (long double, long double) |
| long double | __k_tanl (long double, long double, int) |
| long double | __polevll (long double, const long double *, int) |
| long double | __p1evll (long double, const long double *, int) |
| double | __lgamma_r (double, int *) |
| float | __lgammaf_r (float, int *) |
| float | __math_xflowf (uint32_t, float) |
| float | __math_uflowf (uint32_t) |
| float | __math_oflowf (uint32_t) |
| float | __math_divzerof (uint32_t) |
| float | __math_invalidf (float) |
| double | __math_xflow (uint32_t, double) |
| double | __math_uflow (uint32_t) |
| double | __math_oflow (uint32_t) |
| double | __math_divzero (uint32_t) |
| double | __math_invalid (double) |
| double | j0 (double x) |
| double | j1 (double x) |
| double | y0 (double x) |
| double | y1 (double x) |
| float | j0f (float x) |
| float | y0f (float x) |
| float | j1f (float x) |
| float | y1f (float x) |
◆ _UNUSED
Value:do { (void)(expr); } while (0)
◆ asdouble
Value:((union{uint64_t _i; double _f;}){i})._f
◆ asfloat
Value:((union{uint32_t _i; float _f;}){i})._f
◆ asuint
Value:((union{float _f; uint32_t _i;}){f})._i
◆ asuint64
Value:((union{double _f; uint64_t _i;}){f})._i
◆ EXTRACT_WORDS
| #define EXTRACT_WORDS |
( |
| hi, |
|
|
| lo, |
|
|
| d ) |
Value:do { \
(hi) = __u >> 32; \
(lo) = (uint32_t)__u; \
} while (0)
◆ FORCE_EVAL
Value: do { \
if (sizeof(x) == sizeof(float)) { \
fp_force_evalf(x); \
} else if (sizeof(x) == sizeof(double)) { \
fp_force_eval(x); \
} else { \
fp_force_evall(x); \
} \
} while(0)
◆ fp_barrier
| #define fp_barrier fp_barrier |
◆ fp_barrierf
| #define fp_barrierf fp_barrierf |
◆ fp_barrierl
| #define fp_barrierl fp_barrierl |
◆ fp_force_eval
| #define fp_force_eval fp_force_eval |
◆ fp_force_evalf
| #define fp_force_evalf fp_force_evalf |
◆ fp_force_evall
| #define fp_force_evall fp_force_evall |
◆ GET_FLOAT_WORD
| #define GET_FLOAT_WORD |
( |
| w, |
|
|
| d ) |
◆ GET_HIGH_WORD
| #define GET_HIGH_WORD |
( |
| hi, |
|
|
| d ) |
◆ GET_LOW_WORD
| #define GET_LOW_WORD |
( |
| lo, |
|
|
| d ) |
◆ INSERT_WORDS
| #define INSERT_WORDS |
( |
| d, |
|
|
| hi, |
|
|
| lo ) |
Value:do { \
(d) =
asdouble(((uint64_t)(hi)<<32) | (uint32_t)(lo)); \
} while (0)
◆ issignaling_inline
| #define issignaling_inline |
( |
| x | ) |
|
◆ issignalingf_inline
| #define issignalingf_inline |
( |
| x | ) |
|
◆ predict_false
| #define predict_false |
( |
| x | ) |
|
◆ predict_true
| #define predict_true |
( |
| x | ) |
|
◆ SET_FLOAT_WORD
| #define SET_FLOAT_WORD |
( |
| d, |
|
|
| w ) |
◆ SET_HIGH_WORD
| #define SET_HIGH_WORD |
( |
| d, |
|
|
| hi ) |
Value:
#define INSERT_WORDS(d, hi, lo)
◆ SET_LOW_WORD
| #define SET_LOW_WORD |
( |
| d, |
|
|
| lo ) |
◆ TOINT_INTRINSICS
| #define TOINT_INTRINSICS 0 |
◆ WANT_ROUNDING
◆ WANT_SNAN
◆ __expo2()
| double __expo2 |
( |
double | , |
|
|
double | ) |
◆ __expo2f()
◆ __k_cos()
| double __k_cos |
( |
double | , |
|
|
double | ) |
◆ __k_cosdf()
| float __k_cosdf |
( |
double | x | ) |
|
◆ __k_cosl()
| long double __k_cosl |
( |
long double | , |
|
|
long double | ) |
◆ __k_sin()
| double __k_sin |
( |
double | , |
|
|
double | , |
|
|
int | ) |
◆ __k_sindf()
| float __k_sindf |
( |
double | x | ) |
|
◆ __k_sinl()
| long double __k_sinl |
( |
long double | , |
|
|
long double | , |
|
|
int | ) |
◆ __k_tan()
| double __k_tan |
( |
double | , |
|
|
double | , |
|
|
int | ) |
◆ __k_tandf()
◆ __k_tanl()
| long double __k_tanl |
( |
long double | , |
|
|
long double | , |
|
|
int | ) |
◆ __lgamma_r()
| double __lgamma_r |
( |
double | , |
|
|
int * | ) |
◆ __lgammaf_r()
◆ __math_divzero()
| double __math_divzero |
( |
uint32_t | sign | ) |
|
◆ __math_divzerof()
| float __math_divzerof |
( |
uint32_t | sign | ) |
|
◆ __math_invalid()
| double __math_invalid |
( |
double | x | ) |
|
◆ __math_invalidf()
◆ __math_oflow()
| double __math_oflow |
( |
uint32_t | sign | ) |
|
◆ __math_oflowf()
| float __math_oflowf |
( |
uint32_t | sign | ) |
|
◆ __math_uflow()
| double __math_uflow |
( |
uint32_t | sign | ) |
|
◆ __math_uflowf()
| float __math_uflowf |
( |
uint32_t | sign | ) |
|
◆ __math_xflow()
| double __math_xflow |
( |
uint32_t | sign, |
|
|
double | y ) |
◆ __math_xflowf()
◆ __p1evll()
| long double __p1evll |
( |
long double | , |
|
|
const long double * | , |
|
|
int | ) |
◆ __polevll()
| long double __polevll |
( |
long double | , |
|
|
const long double * | , |
|
|
int | ) |
◆ __rem_pio2()
| int __rem_pio2 |
( |
double | , |
|
|
double * | ) |
◆ __rem_pio2_large()
| int __rem_pio2_large |
( |
double * | x, |
|
|
double * | y, |
|
|
int | e0, |
|
|
int | nx, |
|
|
int | prec ) |
◆ __rem_pio2f()
◆ __rem_pio2l()
| int __rem_pio2l |
( |
long double | , |
|
|
long double * | ) |
◆ eval_as_double()
| double eval_as_double |
( |
double | x | ) |
|
|
inlinestatic |
◆ eval_as_float()
◆ fp_barrier()
| double fp_barrier |
( |
double | x | ) |
|
|
inlinestatic |
◆ fp_barrierf()
◆ fp_barrierl()
| long double fp_barrierl |
( |
long double | x | ) |
|
|
inlinestatic |
◆ fp_force_eval()
| void fp_force_eval |
( |
double | x | ) |
|
|
inlinestatic |
◆ fp_force_evalf()
| void fp_force_evalf |
( |
float | x | ) |
|
|
inlinestatic |
◆ fp_force_evall()
| void fp_force_evall |
( |
long double | x | ) |
|
|
inlinestatic |
◆ j0()
◆ j0f()
◆ j1()
◆ j1f()
◆ y0()
◆ y0f()
◆ y1()
◆ y1f()
◆ __signgam