summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/msun/ld128/s_exp2l.c2
-rw-r--r--lib/msun/ld80/s_exp2l.c2
-rw-r--r--lib/msun/src/s_exp2.c2
-rw-r--r--lib/msun/src/s_exp2f.c2
4 files changed, 4 insertions, 4 deletions
diff --git a/lib/msun/ld128/s_exp2l.c b/lib/msun/ld128/s_exp2l.c
index a94b892..31178e4 100644
--- a/lib/msun/ld128/s_exp2l.c
+++ b/lib/msun/ld128/s_exp2l.c
@@ -371,7 +371,7 @@ exp2l(long double x)
if (u.xbits.manh != 0
|| u.xbits.manl != 0
|| (hx & 0x8000) == 0)
- return (x); /* x is NaN or +Inf */
+ return (x + x); /* x is NaN or +Inf */
else
return (0.0); /* x is -Inf */
}
diff --git a/lib/msun/ld80/s_exp2l.c b/lib/msun/ld80/s_exp2l.c
index 8a0dbe2..14dfc1d 100644
--- a/lib/msun/ld80/s_exp2l.c
+++ b/lib/msun/ld80/s_exp2l.c
@@ -226,7 +226,7 @@ exp2l(long double x)
if (ix >= BIAS + 14) { /* |x| >= 16384 or x is NaN */
if (ix == BIAS + LDBL_MAX_EXP) {
if (u.xbits.man != 1ULL << 63 || (hx & 0x8000) == 0)
- return (x); /* x is NaN or +Inf */
+ return (x + x); /* x is +Inf or NaN */
else
return (0.0); /* x is -Inf */
}
diff --git a/lib/msun/src/s_exp2.c b/lib/msun/src/s_exp2.c
index 63b8997..c46750f 100644
--- a/lib/msun/src/s_exp2.c
+++ b/lib/msun/src/s_exp2.c
@@ -351,7 +351,7 @@ exp2(double x)
if(ix >= 0x7ff00000) {
GET_LOW_WORD(lx,x);
if(((ix & 0xfffff) | lx) != 0 || (hx & 0x80000000) == 0)
- return (x); /* x is NaN or +Inf */
+ return (x + x); /* x is NaN or +Inf */
else
return (0.0); /* x is -Inf */
}
diff --git a/lib/msun/src/s_exp2f.c b/lib/msun/src/s_exp2f.c
index 1b9299f..43da2f6 100644
--- a/lib/msun/src/s_exp2f.c
+++ b/lib/msun/src/s_exp2f.c
@@ -104,7 +104,7 @@ exp2f(float x)
if(ix >= 0x43000000) { /* |x| >= 128 */
if(ix >= 0x7f800000) {
if ((ix & 0x7fffff) != 0 || (hx & 0x80000000) == 0)
- return (x); /* x is NaN or +Inf */
+ return (x + x); /* x is NaN or +Inf */
else
return (0.0); /* x is -Inf */
}
OpenPOWER on IntegriCloud