aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/libm-ieee754
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/libm-ieee754')
-rw-r--r--sysdeps/libm-ieee754/s_erf.c4
-rw-r--r--sysdeps/libm-ieee754/s_fdim.c4
-rw-r--r--sysdeps/libm-ieee754/s_fmax.c4
-rw-r--r--sysdeps/libm-ieee754/s_fmin.c4
-rw-r--r--sysdeps/libm-ieee754/s_log2.c4
-rw-r--r--sysdeps/libm-ieee754/s_nan.c9
-rw-r--r--sysdeps/libm-ieee754/s_nanf.c5
-rw-r--r--sysdeps/libm-ieee754/s_nanl.c6
-rw-r--r--sysdeps/libm-ieee754/s_remquo.c4
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