diff options
Diffstat (limited to 'sysdeps/libm-ieee754')
-rw-r--r-- | sysdeps/libm-ieee754/s_erf.c | 4 | ||||
-rw-r--r-- | sysdeps/libm-ieee754/s_fdim.c | 4 | ||||
-rw-r--r-- | sysdeps/libm-ieee754/s_fmax.c | 4 | ||||
-rw-r--r-- | sysdeps/libm-ieee754/s_fmin.c | 4 | ||||
-rw-r--r-- | sysdeps/libm-ieee754/s_log2.c | 4 | ||||
-rw-r--r-- | sysdeps/libm-ieee754/s_nan.c | 9 | ||||
-rw-r--r-- | sysdeps/libm-ieee754/s_nanf.c | 5 | ||||
-rw-r--r-- | sysdeps/libm-ieee754/s_nanl.c | 6 | ||||
-rw-r--r-- | sysdeps/libm-ieee754/s_remquo.c | 4 |
9 files changed, 31 insertions, 13 deletions
diff --git a/sysdeps/libm-ieee754/s_erf.c b/sysdeps/libm-ieee754/s_erf.c index 022cf11abe..f64f0fcefd 100644 --- a/sysdeps/libm-ieee754/s_erf.c +++ b/sysdeps/libm-ieee754/s_erf.c @@ -247,6 +247,10 @@ sb7 = -2.24409524465858183362e+01; /* 0xC03670E2, 0x42712D62 */ if(hx>=0) return one-r/x; else return r/x-one; } weak_alias (__erf, erf) +#ifdef NO_LONG_DOUBLE +strong_alias (__erf, __erfl) +weak_alias (__erf, erfl) +#endif #ifdef __STDC__ double __erfc(double x) diff --git a/sysdeps/libm-ieee754/s_fdim.c b/sysdeps/libm-ieee754/s_fdim.c index cdd7886068..b45c413cb8 100644 --- a/sysdeps/libm-ieee754/s_fdim.c +++ b/sysdeps/libm-ieee754/s_fdim.c @@ -34,3 +34,7 @@ __fdim (double x, double y) return x < y ? 0 : x - y; } weak_alias (__fdim, fdim) +#ifdef NO_LONG_DOUBLE +strong_alias (__fdim, __fdiml) +weak_alias (__fdim, fdiml) +#endif diff --git a/sysdeps/libm-ieee754/s_fmax.c b/sysdeps/libm-ieee754/s_fmax.c index 651def8aac..bc6af7286c 100644 --- a/sysdeps/libm-ieee754/s_fmax.c +++ b/sysdeps/libm-ieee754/s_fmax.c @@ -27,3 +27,7 @@ __fmax (double x, double y) return (isgreaterequal (x, y) || isnan (y)) ? x : y; } weak_alias (__fmax, fmax) +#ifdef NO_LONG_DOUBLE +strong_alias (__fmax, __fmaxl) +weak_alias (__fmax, fmaxl) +#endif diff --git a/sysdeps/libm-ieee754/s_fmin.c b/sysdeps/libm-ieee754/s_fmin.c index 2a49a2e069..f9a937c850 100644 --- a/sysdeps/libm-ieee754/s_fmin.c +++ b/sysdeps/libm-ieee754/s_fmin.c @@ -27,3 +27,7 @@ __fmin (double x, double y) return (islessequal (x, y) || isnan (y)) ? x : y; } weak_alias (__fmin, fmin) +#ifdef NO_LONG_DOUBLE +strong_alias (__fmim, __fminl) +weak_alias (__fmin, fminl) +#endif diff --git a/sysdeps/libm-ieee754/s_log2.c b/sysdeps/libm-ieee754/s_log2.c index 7950dfa420..46b53cfeff 100644 --- a/sysdeps/libm-ieee754/s_log2.c +++ b/sysdeps/libm-ieee754/s_log2.c @@ -129,3 +129,7 @@ static double zero = 0.0; } weak_alias (__log2, log2) +#ifdef NO_LONG_DOUBLE +strong_alias (__log2, __log2l) +weak_alias (__log2, log2l) +#endif diff --git a/sysdeps/libm-ieee754/s_nan.c b/sysdeps/libm-ieee754/s_nan.c index 1d2319cbd8..ff3b26855f 100644 --- a/sysdeps/libm-ieee754/s_nan.c +++ b/sysdeps/libm-ieee754/s_nan.c @@ -28,9 +28,6 @@ double __nan (const char *tagp) { - static const union ieee754_double nan_value = - { ieee: { mantissa1: 0, mantissa0: 0x80000, exponent: 0x7ff, negative: 0 } }; - if (tagp[0] != '\0') { char buf[6 + strlen (tagp)]; @@ -38,6 +35,10 @@ __nan (const char *tagp) return strtod (buf, NULL); } - return nan_value.d; + return NAN; } weak_alias (__nan, nan) +#ifdef NO_LONG_DOUBLE +strong_alias (__nan, __nanl) +weak_alias (__nan, nanl) +#endif diff --git a/sysdeps/libm-ieee754/s_nanf.c b/sysdeps/libm-ieee754/s_nanf.c index 56fb9e7e3d..862327aa1e 100644 --- a/sysdeps/libm-ieee754/s_nanf.c +++ b/sysdeps/libm-ieee754/s_nanf.c @@ -28,9 +28,6 @@ float __nanf (const char *tagp) { - static const union ieee754_float nan_value = - { ieee: { mantissa: 0x400000, exponent: 0xff, negative: 0 } }; - if (tagp[0] != '\0') { char buf[6 + strlen (tagp)]; @@ -38,6 +35,6 @@ __nanf (const char *tagp) return strtof (buf, NULL); } - return nan_value.f; + return NANF; } weak_alias (__nanf, nanf) diff --git a/sysdeps/libm-ieee754/s_nanl.c b/sysdeps/libm-ieee754/s_nanl.c index 279e070492..223f95082e 100644 --- a/sysdeps/libm-ieee754/s_nanl.c +++ b/sysdeps/libm-ieee754/s_nanl.c @@ -28,10 +28,6 @@ long double __nanl (const char *tagp) { - static const union ieee854_long_double nan_value = - { ieee: { mantissa1: 0, mantissa0: 0xc0000000, - exponent: 0x7fff, negative: 0 } }; - if (tagp[0] != '\0') { char buf[6 + strlen (tagp)]; @@ -39,6 +35,6 @@ __nanl (const char *tagp) return strtold (buf, NULL); } - return nan_value.d; + return NANL; } weak_alias (__nanl, nanl) diff --git a/sysdeps/libm-ieee754/s_remquo.c b/sysdeps/libm-ieee754/s_remquo.c index 4103155e3f..f0a32130a2 100644 --- a/sysdeps/libm-ieee754/s_remquo.c +++ b/sysdeps/libm-ieee754/s_remquo.c @@ -110,3 +110,7 @@ __remquo (double x, double y, int *quo) return x; } weak_alias (__remquo, remquo) +#ifdef NO_LONG_DOUBLE +strong_alias (__remquo, __remquol) +weak_alias (__remquo, remquol) +#endif |