glibc/sysdeps/ieee754/flt-32
Joseph Myers 5a608ccc2d 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.
2015-05-15 17:47:29 +00:00
..
e_acosf.c Fix acosf underflow (bug 14153). 2012-05-25 11:07:07 +00:00
e_acoshf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
e_asinf.c Fix asin missing underflows (bug 16351). 2015-02-26 17:18:54 +00:00
e_atan2f.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
e_atanhf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
e_coshf.c Fix cosh spurious underflows from expm1 (bug 16354), inaccurate results near 0 (bug 17061). 2014-06-23 20:20:10 +00:00
e_exp2f.c Fix exp2 spurious underflows (bug 16560). 2015-02-12 19:02:45 +00:00
e_expf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
e_fmodf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
e_gammaf_r.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
e_hypotf.c Fix hypotf overflow/underflow by using double precision instead of scaling. 2012-03-13 18:08:58 -07:00
e_ilogbf.c Remove useless __ilogb*_finite aliases 2012-04-18 00:40:13 +02:00
e_j0f.c Avoid uninitialized warnings in Bessel functions. 2015-02-26 21:49:19 +00:00
e_j1f.c Avoid uninitialized warnings in Bessel functions. 2015-02-26 21:49:19 +00:00
e_jnf.c Fix yn overflow handling in non-default rounding modes (bug 16561, bug 16562). 2014-06-27 14:52:13 +00:00
e_lgammaf_r.c Fix lgammaf spurious underflows (bug 18220). 2015-05-15 17:21:08 +00:00
e_log2f.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
e_log10f.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
e_logf.c Fix catan, catanh, __ieee754_logf in round-downward mode (bug 16799, bug 16800). 2014-04-02 17:41:02 +00:00
e_powf.c Fix spurious underflows from pow with results close to 1 (bug 14811). 2012-11-07 13:03:31 +00:00
e_rem_pio2f.c Fix leading whitespaces. 2013-06-06 20:36:07 +02:00
e_remainderf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
e_sinhf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
e_sqrtf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
k_cosf.c Remove trailing whitespace. 2013-06-05 20:44:03 +00:00
k_rem_pio2f.c Fix leading whitespaces. 2013-06-06 20:36:07 +02:00
k_sinf.c Remove trailing whitespace. 2013-06-05 20:44:03 +00:00
k_tanf.c Fix tanf spurious underflows (bug 18221). 2015-05-15 17:47:29 +00:00
math_private.h Make inline __isnan, __isinf_ns, __finite generic. 2012-03-19 06:47:43 -07:00
mpn2flt.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
s_asinhf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_atanf.c Fix atanf spurious underflows (bug 18196). 2015-05-14 23:51:09 +00:00
s_cbrtf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
s_ceilf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_copysignf.c Remove trailing whitespace. 2013-06-05 20:44:03 +00:00
s_cosf.c Add optimized sinf and cosf routines for x86 and x86-64 2012-09-03 15:32:13 +02:00
s_erff.c Fix erfcf spurious underflows (bug 18217). 2015-05-15 00:16:10 +00:00
s_expm1f.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_fabsf.c Remove trailing whitespace. 2013-06-05 20:44:03 +00:00
s_finitef.c PowerPC: multiarch finite/finitef for PowerPC32 2013-12-06 05:47:03 -06:00
s_floorf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_fpclassifyf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
s_frexpf.c Remove trailing whitespace. 2013-06-05 20:44:03 +00:00
s_isinf_nsf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_isinff.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_isnanf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_issignalingf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
s_llrintf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
s_llroundf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
s_log1pf.c Fix log1p missing underflows (bug 16339). 2015-05-14 23:38:07 +00:00
s_logbf.c Use glibc_likely instead __builtin_expect. 2014-02-10 15:07:12 +01:00
s_lrintf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
s_lroundf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
s_modff.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_nearbyintf.c Fix nearbyint scheduling of arithmetic past fesetenv (bug 15490). 2013-05-19 18:40:25 +00:00
s_nextafterf.c Fix nextafter overflow in non-default rounding modes (bug 16677). 2014-03-11 22:24:00 +00:00
s_remquof.c Fix sign of remquo zero remainder in round-downward mode (bug 17987). 2015-02-17 00:41:50 +00:00
s_rintf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_roundf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
s_scalblnf.c [BZ #6803] Set errno for scalbln, scalbn 2014-06-20 07:48:20 +05:30
s_scalbnf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_signbitf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
s_sincosf.c Fix sincos errno setting (bug 15467). 2015-02-11 23:17:25 +00:00
s_sinf.c Add optimized sinf and cosf routines for x86 and x86-64 2012-09-03 15:32:13 +02:00
s_tanf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_tanhf.c Use <> for math.h and math_private.h everywhere. 2012-03-09 16:09:10 -08:00
s_truncf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
t_exp2f.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
w_expf.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00