--- src/lib/libm/src/e_logf.c 2005/07/26 21:15:20 1.1 +++ src/lib/libm/src/e_logf.c 2007/06/24 05:17:51 1.2 @@ -56,7 +56,7 @@ logf(float x) SET_FLOAT_WORD(x,ix|(i^0x3f800000)); /* normalize x or x/2 */ k += (i>>23); f = x-(float)1.0; - if((0x007fffff&(15+ix))<16) { /* |f| < 2**-20 */ + 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;} }