glibc/sysdeps/ieee754
Szabolcs Nagy 7363a9a9a0 math: Fix asin and acos invalid exception with old gcc
This works around a gcc issue where it const folded inf/inf into nan,
preventing the invalid exception to be signalled.

(x-x)/(x-x) is more robust against optimizations and works for all
out of bounds values including x==nan.

The gcc issue https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95115
should be fixed on release branches starting from gcc-10, but it is
better to change the code in case glibc is built with older gcc.

Reviewed-by: Wilco Dijkstra  <Wilco.Dijkstra@arm.com>
2022-10-17 08:18:52 +01:00
..
dbl-64 math: Fix asin and acos invalid exception with old gcc 2022-10-17 08:18:52 +01:00
float128 Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
flt-32 i686: Use generic sincosf implementation for SSE2 version 2022-06-01 10:47:44 -03:00
ldbl-64-128 Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
ldbl-96 math: Add math-use-builtins-fabs (BZ#29027) 2022-05-23 17:49:18 -03:00
ldbl-128 Update _FloatN header support for C++ in GCC 13 2022-09-28 20:10:08 +00:00
ldbl-128ibm math: Add math-use-builtins-fabs (BZ#29027) 2022-05-23 17:49:18 -03:00
ldbl-128ibm-compat Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
ldbl-opt Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
soft-fp Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
ieee754.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
k_standard.c Use copysign functions not __copysign functions in glibc libm. 2018-09-27 20:04:48 +00:00
k_standardf.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
k_standardl.c Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
libm-alias-finite.h Update copyright dates with scripts/update-copyrights 2022-01-01 11:40:24 -08:00
Makefile Avoid -Wno-write-strings for k_standard.c. 2015-02-26 22:50:54 +00:00
s_lib_version.c Simplify math-svid-compat code. 2017-08-28 15:19:52 +00:00
s_matherr.c Obsolete matherr, _LIB_VERSION, libieee.a. 2017-08-21 17:45:10 +00:00
s_signgam.c Remove unnecessary math_private.h includes. 2018-09-28 21:53:33 +00:00