diff options
author | Joseph Myers <joseph@codesourcery.com> | 2013-10-10 19:11:30 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2013-10-10 19:11:30 +0000 |
commit | 6f10289efb65e97917ebe42686f492a0037ec129 (patch) | |
tree | 247f562abff14c8c7b1af9024e8041e204785b96 /sysdeps/ieee754 | |
parent | 321e26847188300173a5dc0ca42c2ff7b9bf7a78 (diff) | |
download | glibc-6f10289efb65e97917ebe42686f492a0037ec129.tar.gz glibc-6f10289efb65e97917ebe42686f492a0037ec129.tar.xz glibc-6f10289efb65e97917ebe42686f492a0037ec129.zip |
Avoid ordered comparisons of NaNs in ldbl-128ibm acosl and asinl.
Diffstat (limited to 'sysdeps/ieee754')
-rw-r--r-- | sysdeps/ieee754/ldbl-128ibm/e_acosl.c | 2 | ||||
-rw-r--r-- | sysdeps/ieee754/ldbl-128ibm/e_asinl.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/sysdeps/ieee754/ldbl-128ibm/e_acosl.c b/sysdeps/ieee754/ldbl-128ibm/e_acosl.c index 86639930c9..2cb288238b 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_acosl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_acosl.c @@ -153,6 +153,8 @@ __ieee754_acosl (long double x) { long double a, z, r, w, p, q, s, t, f2; + if (__glibc_unlikely (__isnanl (x))) + return x + x; a = __builtin_fabsl (x); if (a == 1.0L) { diff --git a/sysdeps/ieee754/ldbl-128ibm/e_asinl.c b/sysdeps/ieee754/ldbl-128ibm/e_asinl.c index 99a5b85fa0..dece11875b 100644 --- a/sysdeps/ieee754/ldbl-128ibm/e_asinl.c +++ b/sysdeps/ieee754/ldbl-128ibm/e_asinl.c @@ -134,6 +134,8 @@ __ieee754_asinl (long double x) long double a, t, w, p, q, c, r, s; int flag; + if (__glibc_unlikely (__isnanl (x))) + return x + x; flag = 0; a = __builtin_fabsl (x); if (a == 1.0L) /* |x|>= 1 */ |