mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-09 23:00:07 +00:00
Fix ldbl-128 j0l spurious underflows (bug 19156).
My recent addition of more tests for j0 showed up that the ldbl-128 implementation of j0l produces spurious underflow exceptions for arguments close to 0 (when the result is very close to 1). This patch fixes this by just returning the argument in that case. Tested for mips64 (where it fixes the recently-added tests that were previously failing). [BZ #19156] * sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_j0l): Return 1 for arguments very close to 0.
This commit is contained in:
parent
1245e51596
commit
0a90a8f2b9
@ -1,3 +1,9 @@
|
||||
2015-10-21 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
[BZ #19156]
|
||||
* sysdeps/ieee754/ldbl-128/e_j0l.c (__ieee754_j0l): Return 1 for
|
||||
arguments very close to 0.
|
||||
|
||||
2015-10-21 Chris Metcalf <cmetcalf@ezchip.com>
|
||||
|
||||
* sysdeps/unix/sysv/linux/tile/sysdep.h (PSEUDO_END)
|
||||
|
2
NEWS
2
NEWS
@ -20,7 +20,7 @@ Version 2.23
|
||||
18952, 18953, 18956, 18961, 18966, 18967, 18969, 18970, 18977, 18980,
|
||||
18981, 18982, 18985, 19003, 19007, 19012, 19016, 19018, 19032, 19046,
|
||||
19049, 19050, 19059, 19071, 19074, 19076, 19077, 19078, 19079, 19085,
|
||||
19086, 19088, 19094, 19095, 19124, 19125, 19129, 19134, 19137.
|
||||
19086, 19088, 19094, 19095, 19124, 19125, 19129, 19134, 19137, 19156.
|
||||
|
||||
* There is now a --disable-timezone-tools configure option for disabling the
|
||||
building and installing of the timezone related utilities (zic, zdump, and
|
||||
|
@ -693,6 +693,8 @@ __ieee754_j0l (long double x)
|
||||
xx = fabsl (x);
|
||||
if (xx <= 2.0L)
|
||||
{
|
||||
if (xx < 0x1p-57L)
|
||||
return 1.0L;
|
||||
/* 0 <= x <= 2 */
|
||||
z = xx * xx;
|
||||
p = z * z * neval (z, J0_2N, NJ0_2N) / deval (z, J0_2D, NJ0_2D);
|
||||
|
Loading…
Reference in New Issue
Block a user