]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Remove x86 mathinline.h asinh, acosh, atanh inlines.
authorJoseph Myers <joseph@codesourcery.com>
Fri, 14 Dec 2018 22:35:57 +0000 (22:35 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Fri, 14 Dec 2018 22:35:57 +0000 (22:35 +0000)
Continuing the removal of bits/mathinline.h inlines that would better
be done by the compiler, this patch removes x86 inlines for asinh,
acosh and atanh functions (only for fast-math, non-SSE 32-bit x86).
I've filed <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88502> for
adding such inlines as an optimization in GCC.

Tested for x86_64 and x86.

* sysdeps/x86/fpu/bits/mathinline.h (asinh): Remove inline
definition.
(acosh): Likewise.
(atanh): Likewise.

ChangeLog
sysdeps/x86/fpu/bits/mathinline.h

index 098d9254ae9fd3ef65b6fd3fc8235674d3df5275..3dd9054e5881e3b3d439b21c572f4bec2a0e78f0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2018-12-14  Joseph Myers  <joseph@codesourcery.com>
+
+       * sysdeps/x86/fpu/bits/mathinline.h (asinh): Remove inline
+       definition.
+       (acosh): Likewise.
+       (atanh): Likewise.
+
 2018-12-14  Florian Weimer  <fweimer@redhat.com>
 
        * manual/process.texi (Process Creation Concepts): Remove
index 8eae3707bef0744b85b9a9375545e85cc36439e8..785fa2ca1392b4858e8ea42278f2fa3b8fbd73c8 100644 (file)
@@ -285,19 +285,6 @@ __inline_mathcodeNP (tanh, __x, \
 #   ifdef __FAST_MATH__
 __inline_mathcodeNP (expm1, __x, __expm1_code)
 
-/* The argument range of the inline version of asinhl is slightly reduced.  */
-__inline_mathcodeNP (asinh, __x, \
-  register long double  __y = __fabsl (__x);                                 \
-  return (log1pl (__y * __y / (__libc_sqrtl (__y * __y + 1.0) + 1.0) + __y)   \
-         * __sgn1l (__x)))
-
-__inline_mathcodeNP (acosh, __x, \
-  return logl (__x + __libc_sqrtl (__x - 1.0) * __libc_sqrtl (__x + 1.0)))
-
-__inline_mathcodeNP (atanh, __x, \
-  register long double __y = __fabsl (__x);                                  \
-  return -0.5 * log1pl (-(__y + __y) / (1.0 + __y)) * __sgn1l (__x))
-
 #   endif
 #  endif