diff options
| -rw-r--r-- | libm/e_exp.c | 2 | ||||
| -rw-r--r-- | libm/s_expm1.c | 2 | 
2 files changed, 2 insertions, 2 deletions
| diff --git a/libm/e_exp.c b/libm/e_exp.c index ffa556120..f694f67d1 100644 --- a/libm/e_exp.c +++ b/libm/e_exp.c @@ -126,7 +126,7 @@ double __ieee754_exp(double x)	/* default IEEE double exp */  	    if(hx < 0x3FF0A2B2) {	/* and |x| < 1.5 ln2 */  		hi = x-ln2HI[xsb]; lo=ln2LO[xsb]; k = 1-xsb-xsb;  	    } else { -		k  = invln2*x+halF[xsb]; +		k  = (int32_t)(invln2*x+halF[xsb]);  		t  = k;  		hi = x - t*ln2HI[0];	/* t*ln2HI is exact here */  		lo = t*ln2LO[0]; diff --git a/libm/s_expm1.c b/libm/s_expm1.c index 8e51ae748..85defefa4 100644 --- a/libm/s_expm1.c +++ b/libm/s_expm1.c @@ -159,7 +159,7 @@ double expm1(double x)  		else  		    {hi = x + ln2_hi; lo = -ln2_lo;  k = -1;}  	    } else { -		k  = invln2*x+((xsb==0)?0.5:-0.5); +		k  = (int32_t)(invln2*x+((xsb==0)?0.5:-0.5));  		t  = k;  		hi = x - t*ln2_hi;	/* t*ln2_hi is exact here */  		lo = t*ln2_lo; | 
