aboutsummaryrefslogtreecommitdiff
path: root/lib/msun/src/e_expf.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/msun/src/e_expf.c')
-rw-r--r--lib/msun/src/e_expf.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/msun/src/e_expf.c b/lib/msun/src/e_expf.c
index 5f4649244f77..f554fd6cdee7 100644
--- a/lib/msun/src/e_expf.c
+++ b/lib/msun/src/e_expf.c
@@ -80,9 +80,9 @@ __ieee754_expf(float x) /* default IEEE double exp */
/* x is now in primary range */
t = x*x;
if(k >= -125)
- SET_FLOAT_WORD(twopk,0x3f800000+(k<<23));
+ SET_FLOAT_WORD(twopk,((u_int32_t)(0x7f+k))<<23);
else
- SET_FLOAT_WORD(twopk,0x3f800000+((k+100)<<23));
+ SET_FLOAT_WORD(twopk,((u_int32_t)(0x7f+(k+100)))<<23);
c = x - t*(P1+t*P2);
if(k==0) return one-((x*c)/(c-(float)2.0)-x);
else y = one-((lo-(x*c)/((float)2.0-c))-hi);