summaryrefslogtreecommitdiff
path: root/sysdeps/ieee754/flt-32/s_frexpf.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/ieee754/flt-32/s_frexpf.c')
-rw-r--r--sysdeps/ieee754/flt-32/s_frexpf.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sysdeps/ieee754/flt-32/s_frexpf.c b/sysdeps/ieee754/flt-32/s_frexpf.c
index 67a28d3603..b7403bf0d8 100644
--- a/sysdeps/ieee754/flt-32/s_frexpf.c
+++ b/sysdeps/ieee754/flt-32/s_frexpf.c
@@ -19,6 +19,7 @@ static char rcsid[] = "$NetBSD: s_frexpf.c,v 1.5 1995/05/10 20:47:26 jtc Exp $";
#include <math.h>
#include <math_private.h>
+#include <libm-alias-float.h>
static const float
two25 = 3.3554432000e+07; /* 0x4c000000 */
@@ -29,7 +30,7 @@ float __frexpf(float x, int *eptr)
GET_FLOAT_WORD(hx,x);
ix = 0x7fffffff&hx;
*eptr = 0;
- if(ix>=0x7f800000||(ix==0)) return x; /* 0,inf,nan */
+ if(ix>=0x7f800000||(ix==0)) return x + x; /* 0,inf,nan */
if (ix<0x00800000) { /* subnormal */
x *= two25;
GET_FLOAT_WORD(hx,x);
@@ -41,4 +42,4 @@ float __frexpf(float x, int *eptr)
SET_FLOAT_WORD(x,hx);
return x;
}
-weak_alias (__frexpf, frexpf)
+libm_alias_float (__frexp, frexp)