mirror of
git://sourceware.org/git/glibc.git
synced 2025-02-17 13:00:43 +08:00
Update.
* sysdeps/ieee754/flt-32/e_powf.c: Handle x == +-1 correctly. * sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
This commit is contained in:
parent
d210ca02ec
commit
f14bd805a7
@ -1,5 +1,8 @@
|
||||
2001-02-19 Ulrich Drepper <drepper@redhat.com>
|
||||
|
||||
* sysdeps/ieee754/flt-32/e_powf.c: Handle x == +-1 correctly.
|
||||
* sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
|
||||
|
||||
* sysdeps/generic/e_scalb.c: Set invalid exception for invalid
|
||||
parameters.
|
||||
* sysdeps/generic/e_scalbf.c: New file.
|
||||
|
@ -149,6 +149,10 @@ C[] = {
|
||||
/* y==zero: x**0 = 1 */
|
||||
if((iy|ly)==0) return C[1];
|
||||
|
||||
/* x==+-1 */
|
||||
if(x == 1.0) return C[1];
|
||||
if(x == -1.0 && isinf(y)) return C[1];
|
||||
|
||||
/* +-NaN return x+y */
|
||||
if(ix > 0x7ff00000 || ((ix==0x7ff00000)&&(lx!=0)) ||
|
||||
iy > 0x7ff00000 || ((iy==0x7ff00000)&&(ly!=0)))
|
||||
|
@ -76,6 +76,10 @@ ivln2_l = 7.0526075433e-06; /* 0x36eca570 =1/ln2 tail*/
|
||||
/* y==zero: x**0 = 1 */
|
||||
if(iy==0) return one;
|
||||
|
||||
/* x==+-1 */
|
||||
if(x == 1.0) return one;
|
||||
if(x == -1.0 && isinf(y)) return one;
|
||||
|
||||
/* +-NaN return x+y */
|
||||
if(ix > 0x7f800000 ||
|
||||
iy > 0x7f800000)
|
||||
|
Loading…
Reference in New Issue
Block a user