Fix ldbl-128ibm logl inaccuracy near 1 (bug 19351).
commite6a6b1c3de62f3ae3f0e5ac5bdcc49a3342f03e7
authorJoseph Myers <joseph@codesourcery.com>
Wed, 9 Dec 2015 23:51:11 +0000 (9 23:51 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Wed, 9 Dec 2015 23:51:11 +0000 (9 23:51 +0000)
treea239075b91eca073d80677205d27516017105e63
parentf517e06ab71e07b24bf085063b0ba2d072da4a56
Fix ldbl-128ibm logl inaccuracy near 1 (bug 19351).

The ldbl-128ibm implementation of logl is inaccurate for arguments
near 1, because when deciding whether to bypass a series expansion for
log(1+z), where z = x-1, it compares the square of z rather than z
itself with an epsilon value.  This patch fixes that comparison, so
eliminating the test failures for inaccuracy of logl in such cases.

Tested for powerpc.

[BZ #19351]
* sysdeps/ieee754/ldbl-128ibm/e_logl.c (__ieee754_logl): When
expanding log(1+z), compare z rather than its square with epsilon
to determine when to avoid evaluating the expansion.
ChangeLog
sysdeps/ieee754/ldbl-128ibm/e_logl.c