diff options
author | Joseph Myers <joseph@codesourcery.com> | 2015-05-15 17:47:29 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2015-05-15 17:47:29 +0000 |
commit | 5a608ccc2d676aa124f6b55a7b20d071e408ca31 (patch) | |
tree | 41c40103e1b049d25bc519ca0688f48d82d61656 /ChangeLog | |
parent | ff069f024ae8cf15d53429e034d67ddcece0f67a (diff) | |
download | glibc-5a608ccc2d676aa124f6b55a7b20d071e408ca31.zip glibc-5a608ccc2d676aa124f6b55a7b20d071e408ca31.tar.gz glibc-5a608ccc2d676aa124f6b55a7b20d071e408ca31.tar.bz2 |
Fix tanf spurious underflows (bug 18221).
The flt-32 implementation of tanf produces spurious underflow
exceptions for some small arguments, through computing values on the
order of x^5. This patch fixes this by adjusting the threshold for
returning x (or, as applicable, +/- 1/x) to 2**-13 (the next term in
the power series being x^3/3).
Tested for x86_64 and x86.
[BZ #18221]
* sysdeps/ieee754/flt-32/k_tanf.c (__kernel_tanf): Use 2**-13 not
2**-28 as threshold for returning x or +/- 1/x.
* math/auto-libm-test-in: Add more tests of tan.
* math/auto-libm-test-out: Regenerated.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -1,5 +1,11 @@ 2015-05-15 Joseph Myers <joseph@codesourcery.com> + [BZ #18221] + * sysdeps/ieee754/flt-32/k_tanf.c (__kernel_tanf): Use 2**-13 not + 2**-28 as threshold for returning x or +/- 1/x. + * math/auto-libm-test-in: Add more tests of tan. + * math/auto-libm-test-out: Regenerated. + [BZ #18220] * sysdeps/ieee754/flt-32/e_lgammaf_r.c (__ieee754_lgammaf_r): Use 2**26 not 2**58 as threshold for returning x * (log (x) - 1). |