summaryrefslogtreecommitdiff
path: root/sysdeps/ieee754/ldbl-128/s_asinhl.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/ieee754/ldbl-128/s_asinhl.c')
-rw-r--r--sysdeps/ieee754/ldbl-128/s_asinhl.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/sysdeps/ieee754/ldbl-128/s_asinhl.c b/sysdeps/ieee754/ldbl-128/s_asinhl.c
index 5f3b9f2c76..a733ee7695 100644
--- a/sysdeps/ieee754/ldbl-128/s_asinhl.c
+++ b/sysdeps/ieee754/ldbl-128/s_asinhl.c
@@ -32,16 +32,18 @@ static char rcsid[] = "$NetBSD: $";
#include <float.h>
#include <math.h>
#include <math_private.h>
+#include <math-underflow.h>
+#include <libm-alias-ldouble.h>
-static const long double
- one = 1.0L,
- ln2 = 6.931471805599453094172321214581765681e-1L,
- huge = 1.0e+4900L;
+static const _Float128
+ one = 1,
+ ln2 = L(6.931471805599453094172321214581765681e-1),
+ huge = L(1.0e+4900);
-long double
-__asinhl (long double x)
+_Float128
+__asinhl (_Float128 x)
{
- long double t, w;
+ _Float128 t, w;
int32_t ix, sign;
ieee854_long_double_shape_type u;
@@ -64,16 +66,16 @@ __asinhl (long double x)
else if (ix >0x40000000)
{ /* 2^ 54 > |x| > 2.0 */
t = u.value;
- w = __ieee754_logl (2.0 * t + one / (__ieee754_sqrtl (x * x + one) + t));
+ w = __ieee754_logl (2.0 * t + one / (sqrtl (x * x + one) + t));
}
else
{ /* 2.0 > |x| > 2 ^ -56 */
t = x * x;
- w = __log1pl (u.value + t / (one + __ieee754_sqrtl (one + t)));
+ w = __log1pl (u.value + t / (one + sqrtl (one + t)));
}
if (sign & 0x80000000)
return -w;
else
return w;
}
-weak_alias (__asinhl, asinhl)
+libm_alias_ldouble (__asinh, asinh)