]> git.ipfire.org Git - thirdparty/glibc.git/commit
Fix ldbl-128ibm tanhl inaccuracy for small arguments (bug 19349).
authorJoseph Myers <joseph@codesourcery.com>
Wed, 9 Dec 2015 21:20:18 +0000 (21:20 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Wed, 9 Dec 2015 21:20:18 +0000 (21:20 +0000)
commitca2fcac629b9b7781ccd52685b28741d89ff128f
tree8c2b6491a4672a338e965e8ca1fa0f8724d189a6
parente5a5315e2d290fe34e0fb80996c713b8b802dcc9
Fix ldbl-128ibm tanhl inaccuracy for small arguments (bug 19349).

The ldbl-128ibm implementation of tanhl is inaccurate for small
arguments, because it returns x*(1+x) (maybe in an attempt to raise
"inexact") when x itself would be the accurate return value but
multiplying by 1+x introduces large errors.  This patch fixes it to
return x in that case (when the mathematical result is x plus a
negligible remainder on the order of x^3) to avoid those errors.

Tested for powerpc.

[BZ #19349]
* sysdeps/ieee754/ldbl-128ibm/s_tanhl.c (__tanhl): Return argument
when small.
ChangeLog
sysdeps/ieee754/ldbl-128ibm/s_tanhl.c