summaryrefslogtreecommitdiff
path: root/sysdeps/ieee754/dbl-64/s_asinh.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/ieee754/dbl-64/s_asinh.c')
-rw-r--r--sysdeps/ieee754/dbl-64/s_asinh.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/sysdeps/ieee754/dbl-64/s_asinh.c b/sysdeps/ieee754/dbl-64/s_asinh.c
index 9193301b5e..192ff8594d 100644
--- a/sysdeps/ieee754/dbl-64/s_asinh.c
+++ b/sysdeps/ieee754/dbl-64/s_asinh.c
@@ -24,6 +24,8 @@
#include <float.h>
#include <math.h>
#include <math_private.h>
+#include <math-underflow.h>
+#include <libm-alias-double.h>
static const double
one = 1.00000000000000000000e+00, /* 0x3FF00000, 0x00000000 */
@@ -54,19 +56,15 @@ __asinh (double x)
double xa = fabs (x);
if (ix > 0x40000000) /* 2**28 > |x| > 2.0 */
{
- w = __ieee754_log (2.0 * xa + one / (__ieee754_sqrt (xa * xa + one) +
+ w = __ieee754_log (2.0 * xa + one / (sqrt (xa * xa + one) +
xa));
}
else /* 2.0 > |x| > 2**-28 */
{
double t = xa * xa;
- w = __log1p (xa + t / (one + __ieee754_sqrt (one + t)));
+ w = __log1p (xa + t / (one + sqrt (one + t)));
}
}
return __copysign (w, x);
}
-weak_alias (__asinh, asinh)
-#ifdef NO_LONG_DOUBLE
-strong_alias (__asinh, __asinhl)
-weak_alias (__asinh, asinhl)
-#endif
+libm_alias_double (__asinh, asinh)