diff options
Diffstat (limited to 'sysdeps/libm-ieee754/s_log1p.c')
-rw-r--r-- | sysdeps/libm-ieee754/s_log1p.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sysdeps/libm-ieee754/s_log1p.c b/sysdeps/libm-ieee754/s_log1p.c index 4ca01b1ff5..0a9801a931 100644 --- a/sysdeps/libm-ieee754/s_log1p.c +++ b/sysdeps/libm-ieee754/s_log1p.c @@ -162,8 +162,10 @@ static double zero = 0.0; } hfsq=0.5*f*f; if(hu==0) { /* |f| < 2**-20 */ - if(f==zero) if(k==0) return zero; + if(f==zero) { + if(k==0) return zero; else {c += k*ln2_lo; return k*ln2_hi+c;} + } R = hfsq*(1.0-0.66666666666666666*f); if(k==0) return f-R; else return k*ln2_hi-((R-(k*ln2_lo+c))-f); |