glibc/sysdeps
Joseph Myers 01dbacd22a Fix cacos (+Inf + finite*i) in round-downward mode (bug 16928).
According to C99/C11 Annex G, cacos applied to a value with real part
+Inf and finite imaginary part should produce a result with real part
+0.  glibc wrongly produces a result with real part -0 in FE_DOWNWARD
mode.  This patch fixes this by checking for zero results in the
relevant case of non-finite arguments (where there should never be a
result with -0 real part), and converts the tests of cacos to
ALL_RM_TEST.

Tested x86_64 and x86 and ulps updated accordingly.

	[BZ #16928]
	* math/s_cacos.c (__cacos): Ensure zero real part of result from
	non-finite arguments is +0.
	* math/s_cacosf.c (__cacosf): Likewise.
	* math/s_cacosl.c (__cacosl): Likewise.
	* math/libm-test.inc (cacos_test): Use ALL_RM_TEST.
	* sysdeps/i386/fpu/libm-test-ulps: Update.
	* sysdeps/x86_64/fpu/libm-test-ulps: Likewise.
2014-05-14 12:37:24 +00:00
..
aarch64 Clean up __exit_thread. 2014-05-13 09:49:20 -07:00
alpha Clean up __exit_thread. 2014-05-13 09:49:20 -07:00
arm Clean up ARM old-ABI symbol versioning relics. 2014-05-14 00:41:20 +00:00
generic Clean up __exit_thread. 2014-05-13 09:49:20 -07:00
gnu Silence a missing-noreturn warning for _Unwind_Resume. 2014-05-09 10:06:20 -07:00
hppa Clean up __exit_thread. 2014-05-13 09:49:20 -07:00
i386 Fix cacos (+Inf + finite*i) in round-downward mode (bug 16928). 2014-05-14 12:37:24 +00:00
ia64 Clean up __exit_thread. 2014-05-13 09:49:20 -07:00
ieee754 Fix acosh (1) in round-downward mode (bug 16927). 2014-05-14 12:35:40 +00:00
init_array Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
m68k Clean up __exit_thread. 2014-05-13 09:49:20 -07:00
mach Some configure-related decrufting. 2014-05-08 11:27:14 -07:00
microblaze Clean up __exit_thread. 2014-05-13 09:49:20 -07:00
mips Clean up __exit_thread. 2014-05-13 09:49:20 -07:00
posix Fix parsing of getai result from nscd for IPv6-only request 2014-05-07 14:21:27 +02:00
powerpc PowerPC: strncpy/stpncpy optimization for PPC64/POWER7 2014-05-06 09:54:25 -05:00
pthread Use glibc_likely instead __builtin_expect. 2014-02-10 15:07:12 +01:00
s390 S/390: Port of lock elision to System/z 2014-05-09 16:58:46 +02:00
sh Don't include individual test ulps in libm-test-ulps. 2014-03-05 15:02:38 +00:00
sparc Fix v9/64-bit strcmp when string ends in multiple zero bytes. 2014-05-01 12:15:06 -07:00
tile Clean up __exit_thread. 2014-05-13 09:49:20 -07:00
unix Fix macro warning on HAVE_PT_CHOWN 2014-05-14 09:46:54 +02:00
wordsize-32 Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
wordsize-64 Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
x86 Include SSE state in i386 fenv_t (bug 16064). 2014-05-09 16:59:56 +00:00
x86_64 Fix cacos (+Inf + finite*i) in round-downward mode (bug 16928). 2014-05-14 12:37:24 +00:00