glibc/sysdeps/x86_64/fpu
Joseph Myers b72592e75f Fix log10 (1) in round-downward mode (bug 16977).
As with various other issues of this kind, bug 16977 is log10 (1)
wrongly returning -0 rather than +0 in round-downward mode because of
an implementation effectively in terms of log1p (x - 1).  This patch
fixes the issue in the same way used for log.

Tested x86_64 and x86 and ulps updated accordingly.  Also tested for
mips64 to confirm a fix was needed for ldbl-128 and to validate that
fix (also applied to ldbl-128ibm since that version of logl is
essentially the same as the ldbl-128 one).

	[BZ #16977]
	* sysdeps/i386/fpu/e_log10.S (__ieee754_log10): Take absolute
	value when x - 1 is zero.
	* sysdeps/i386/fpu/e_log10f.S (__ieee754_log10f): Likewise.
	* sysdeps/i386/fpu/e_log10l.S (__ieee754_log10l): Likewise.
	* sysdeps/ieee754/ldbl-128/e_log10l.c (__ieee754_log10l): Return
	0.0L for an argument of 1.0L.
	* sysdeps/ieee754/ldbl-128ibm/e_log10l.c (__ieee754_log10l):
	Likewise.
	* sysdeps/x86_64/fpu/e_log10l.S (__ieee754_log10l): Take absolute
	value when x - 1 is zero.
	* math/libm-test.inc (log10_test): Use ALL_RM_TEST.
	* sysdeps/i386/fpu/libm-test-ulps: Update.
	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
2014-05-23 12:07:50 +00:00
..
multiarch Fix implicit __isinf declarations in exp. 2014-03-24 22:00:32 +00:00
Implies
dla.h
e_acosl.c
e_atan2l.c
e_exp2l.S
e_exp10l.S
e_expf.S
e_expl.S Fix x86/x86_64 expl/exp10l spurious underflows (bug 16348). 2014-03-27 18:41:14 +00:00
e_fmodl.S
e_ilogbl.S
e_log2l.S
e_log10l.S Fix log10 (1) in round-downward mode (bug 16977). 2014-05-23 12:07:50 +00:00
e_logl.S Fix log (1) in round-downward mode (bug 16731). 2014-03-21 18:13:58 +00:00
e_powl.S
e_remainderl.S
e_scalbl.S
e_sqrt.c
e_sqrtf.c
e_sqrtl.c
fclrexcpt.c
fedisblxcpt.c
feenablxcpt.c
fegetenv.c Make x86_64 fegetenv preserve exception mask (bug 16198). 2014-03-26 18:59:08 +00:00
fegetexcept.c
fegetround.c
feholdexcpt.c
fesetenv.c
fesetround.c
feupdateenv.c
fgetexcptflg.c
fraiseexcpt.c
fsetexcptflg.c
ftestexcept.c
k_rem_pio2l.c
libm-test-ulps Fix log10 (1) in round-downward mode (bug 16977). 2014-05-23 12:07:50 +00:00
math_ldbl.h
math_private.h
printf_fphex.c
s_atanl.c
s_ceill.S
s_copysign.S
s_copysignf.S
s_copysignl.S
s_cosf.S
s_expm1l.S
s_fabs.c
s_fabsf.c
s_fabsl.S
s_fdiml.S
s_finitel.S
s_floorl.S
s_fmax.S
s_fmaxf.S
s_fmaxl.S
s_fmin.S
s_fminf.S
s_fminl.S
s_fpclassifyl.c
s_isinfl.c
s_isnanl.c
s_llrint.S
s_llrintf.S
s_llrintl.S
s_log1pl.S Fix log1pl (LDBL_MAX) in FE_UPWARD mode (bug 16564). 2014-05-14 12:38:56 +00:00
s_logbl.c
s_lrint.S
s_lrintf.S
s_lrintl.S
s_nearbyintl.S
s_nextafterl.c
s_nexttoward.c
s_nexttowardf.c
s_rintl.c
s_scalbnl.S
s_signbit.S
s_signbitf.S
s_significandl.c
s_sincosf.S
s_sinf.S
s_truncl.S