📄 fdlibm.c
字号:
extern double atan (double) ;
extern double cos (double) ;
extern double sin (double) ;
extern double tan (double) ;
extern double tanh (double) ;
extern double frexp (double, int *) ;
extern double modf (double, double *) ;
extern double ceil (double) ;
extern double fabs (double) ;
extern double floor (double) ;
extern double acos (double) ;
extern double asin (double) ;
extern double atan2 (double, double) ;
extern double cosh (double) ;
extern double sinh (double) ;
extern double exp (double) ;
extern double ldexp (double, int) ;
extern double log (double) ;
extern double log10 (double) ;
extern double pow (double, double) ;
extern double sqrt (double) ;
extern double fmod (double, double) ;
extern double infinity (void) ;
extern double nan (void) ;
extern int isnan (double) ;
extern int isinf (double) ;
extern int finite (double) ;
extern double copysign (double, double) ;
extern int ilogb (double) ;
extern double asinh (double) ;
extern double cbrt (double) ;
extern double nextafter (double, double) ;
extern double rint (double) ;
extern double scalbn (double, int) ;
extern double log1p (double) ;
extern double expm1 (double) ;
extern double acosh (double) ;
extern double atanh (double) ;
extern double remainder (double, double) ;
extern double gamma (double) ;
extern double gamma_r (double, int *) ;
extern double lgamma (double) ;
extern double lgamma_r (double, int *) ;
extern double erf (double) ;
extern double erfc (double) ;
extern double y0 (double) ;
extern double y1 (double) ;
extern double yn (int, double) ;
extern double j0 (double) ;
extern double j1 (double) ;
extern double jn (int, double) ;
extern double hypot (double, double) ;
extern double cabs();
extern double drem (double, double) ;
extern float atanf (float) ;
extern float cosf (float) ;
extern float sinf (float) ;
extern float tanf (float) ;
extern float tanhf (float) ;
extern float frexpf (float, int *) ;
extern float modff (float, float *) ;
extern float ceilf (float) ;
extern float fabsf (float) ;
extern float floorf (float) ;
extern float acosf (float) ;
extern float asinf (float) ;
extern float atan2f (float, float) ;
extern float coshf (float) ;
extern float sinhf (float) ;
extern float expf (float) ;
extern float ldexpf (float, int) ;
extern float logf (float) ;
extern float log10f (float) ;
extern float powf (float, float) ;
extern float sqrtf (float) ;
extern float fmodf (float, float) ;
extern float infinityf (void) ;
extern float nanf (void) ;
extern int isnanf (float) ;
extern int isinff (float) ;
extern int finitef (float) ;
extern float copysignf (float, float) ;
extern int ilogbf (float) ;
extern float asinhf (float) ;
extern float cbrtf (float) ;
extern float nextafterf (float, float) ;
extern float rintf (float) ;
extern float scalbnf (float, int) ;
extern float log1pf (float) ;
extern float expm1f (float) ;
extern float acoshf (float) ;
extern float atanhf (float) ;
extern float remainderf (float, float) ;
extern float gammaf (float) ;
extern float gammaf_r (float, int *) ;
extern float lgammaf (float) ;
extern float lgammaf_r (float, int *) ;
extern float erff (float) ;
extern float erfcf (float) ;
extern float y0f (float) ;
extern float y1f (float) ;
extern float ynf (int, float) ;
extern float j0f (float) ;
extern float j1f (float) ;
extern float jnf (int, float) ;
extern float hypotf (float, float) ;
extern float cabsf();
extern float dremf (float, float) ;
extern int signgam;
struct exception;
struct exception
{
int type;
char *name;
double arg1;
double arg2;
double retval;
int err;
};
# 233 "/home/potatooo/fcc/lib/gcc-lib/mips-ecoff/2.8.1/include/math.h" 3
extern int matherr (struct exception *e) ;
enum __fdlibm_version
{
__fdlibm_ieee = -1,
__fdlibm_svid,
__fdlibm_xopen,
__fdlibm_posix
};
extern enum __fdlibm_version __fdlib_version ;
# 15 "fdlibm.h" 2
# 1 "/home/potatooo/fcc/mips-ecoff/include/machine/ieeefp.h" 1 3
# 44 "/home/potatooo/fcc/mips-ecoff/include/machine/ieeefp.h" 3
# 118 "/home/potatooo/fcc/mips-ecoff/include/machine/ieeefp.h" 3
# 16 "fdlibm.h" 2
extern double logb (double) ;
extern double scalb (double, double) ;
extern double significand (double) ;
extern double __ieee754_sqrt (double) ;
extern double __ieee754_acos (double) ;
extern double __ieee754_acosh (double) ;
extern double __ieee754_log (double) ;
extern double __ieee754_atanh (double) ;
extern double __ieee754_asin (double) ;
extern double __ieee754_atan2 (double,double) ;
extern double __ieee754_exp (double) ;
extern double __ieee754_cosh (double) ;
extern double __ieee754_fmod (double,double) ;
extern double __ieee754_pow (double,double) ;
extern double __ieee754_lgamma_r (double,int *) ;
extern double __ieee754_gamma_r (double,int *) ;
extern double __ieee754_log10 (double) ;
extern double __ieee754_sinh (double) ;
extern double __ieee754_hypot (double,double) ;
extern double __ieee754_j0 (double) ;
extern double __ieee754_j1 (double) ;
extern double __ieee754_y0 (double) ;
extern double __ieee754_y1 (double) ;
extern double __ieee754_jn (int,double) ;
extern double __ieee754_yn (int,double) ;
extern double __ieee754_remainder (double,double) ;
extern __int32_t __ieee754_rem_pio2 (double,double*) ;
extern double __ieee754_scalb (double,double) ;
extern double __kernel_standard (double,double,int) ;
extern double __kernel_sin (double,double,int) ;
extern double __kernel_cos (double,double) ;
extern double __kernel_tan (double,double,int) ;
extern int __kernel_rem_pio2 (double*,double*,int,int,int,const __int32_t*) ;
extern float logbf (float) ;
extern float scalbf (float, float) ;
extern float significandf (float) ;
extern float __ieee754_sqrtf (float) ;
extern float __ieee754_acosf (float) ;
extern float __ieee754_acoshf (float) ;
extern float __ieee754_logf (float) ;
extern float __ieee754_atanhf (float) ;
extern float __ieee754_asinf (float) ;
extern float __ieee754_atan2f (float,float) ;
extern float __ieee754_expf (float) ;
extern float __ieee754_coshf (float) ;
extern float __ieee754_fmodf (float,float) ;
extern float __ieee754_powf (float,float) ;
extern float __ieee754_lgammaf_r (float,int *) ;
extern float __ieee754_gammaf_r (float,int *) ;
extern float __ieee754_log10f (float) ;
extern float __ieee754_sinhf (float) ;
extern float __ieee754_hypotf (float,float) ;
extern float __ieee754_j0f (float) ;
extern float __ieee754_j1f (float) ;
extern float __ieee754_y0f (float) ;
extern float __ieee754_y1f (float) ;
extern float __ieee754_jnf (int,float) ;
extern float __ieee754_ynf (int,float) ;
extern float __ieee754_remainderf (float,float) ;
extern __int32_t __ieee754_rem_pio2f (float,float*) ;
extern float __ieee754_scalbf (float,float) ;
extern float __kernel_sinf (float,float,int) ;
extern float __kernel_cosf (float,float) ;
extern float __kernel_tanf (float,float,int) ;
extern int __kernel_rem_pio2f (float*,float*,int,int,int,const __int32_t*) ;
#ifdef __IEEE_BIG_ENDIAN
typedef union
{
double value;
struct
{
__uint32_t msw;
__uint32_t lsw;
} parts;
} ieee_double_shape_type;
#endif
#ifdef __IEEE_LITTLE_ENDIAN
typedef union
{
double value;
struct
{
__uint32_t lsw;
__uint32_t msw;
} parts;
} ieee_double_shape_type;
#endif
/* Get two 32 bit ints from a double. */
#define EXTRACT_WORDS(ix0,ix1,d) \
do { \
ieee_double_shape_type ew_u; \
ew_u.value = (d); \
(ix0) = ew_u.parts.msw; \
(ix1) = ew_u.parts.lsw; \
} while (0)
/* Get the more significant 32 bit int from a double. */
#define GET_HIGH_WORD(i,d) \
do { \
ieee_double_shape_type gh_u; \
gh_u.value = (d); \
(i) = gh_u.parts.msw; \
} while (0)
/* Get the less significant 32 bit int from a double. */
#define GET_LOW_WORD(i,d) \
do { \
ieee_double_shape_type gl_u; \
gl_u.value = (d); \
(i) = gl_u.parts.lsw; \
} while (0)
/* Set a double from two 32 bit ints. */
#define INSERT_WORDS(d,ix0,ix1) \
do { \
ieee_double_shape_type iw_u; \
iw_u.parts.msw = (ix0); \
iw_u.parts.lsw = (ix1); \
(d) = iw_u.value; \
} while (0)
/* Set the more significant 32 bits of a double from an int. */
#define SET_HIGH_WORD(d,v) \
do { \
ieee_double_shape_type sh_u; \
sh_u.value = (d); \
sh_u.parts.msw = (v); \
(d) = sh_u.value; \
} while (0)
/* Set the less significant 32 bits of a double from an int. */
#define SET_LOW_WORD(d,v) \
do { \
ieee_double_shape_type sl_u; \
sl_u.value = (d); \
sl_u.parts.lsw = (v); \
(d) = sl_u.value; \
} while (0)
typedef union
{
float value;
__uint32_t word;
} ieee_float_shape_type;
#define GET_FLOAT_WORD(i,d) \
do { \
ieee_float_shape_type gf_u; \
gf_u.value = (d); \
(i) = gf_u.word; \
} while (0)
/* Set a float from a 32 bit int. */
#define SET_FLOAT_WORD(d,i) \
do { \
ieee_float_shape_type sf_u; \
sf_u.word = (i); \
(d) = sf_u.value; \
} while (0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -