diff options
Diffstat (limited to 'lib/msun/src/e_logf.c')
-rw-r--r-- | lib/msun/src/e_logf.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/msun/src/e_logf.c b/lib/msun/src/e_logf.c index 654c1e2..c3be6ed 100644 --- a/lib/msun/src/e_logf.c +++ b/lib/msun/src/e_logf.c @@ -55,8 +55,14 @@ __ieee754_logf(float x) k += (i>>23); f = x-(float)1.0; if((0x007fffff&(0x8000+ix))<0xc000) { /* -2**-9 <= f < 2**-9 */ - if(f==zero) if(k==0) return zero; else {dk=(float)k; - return dk*ln2_hi+dk*ln2_lo;} + if(f==zero) { + if(k==0) { + return zero; + } else { + dk=(float)k; + return dk*ln2_hi+dk*ln2_lo; + } + } R = f*f*((float)0.5-(float)0.33333333333333333*f); if(k==0) return f-R; else {dk=(float)k; return dk*ln2_hi-((R-dk*ln2_lo)-f);} |