diff options
Diffstat (limited to 'sysdeps/ieee754/ldbl-128/e_asinl.c')
-rw-r--r-- | sysdeps/ieee754/ldbl-128/e_asinl.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sysdeps/ieee754/ldbl-128/e_asinl.c b/sysdeps/ieee754/ldbl-128/e_asinl.c index cd1a8da42c..353603d68c 100644 --- a/sysdeps/ieee754/ldbl-128/e_asinl.c +++ b/sysdeps/ieee754/ldbl-128/e_asinl.c @@ -59,6 +59,7 @@ */ +#include <float.h> #include <math.h> #include <math_private.h> long double sqrtl (long double); @@ -152,6 +153,11 @@ __ieee754_asinl (long double x) { if (ix < 0x3fc60000) /* |x| < 2**-57 */ { + if (fabsl (x) < LDBL_MIN) + { + long double force_underflow = x * x; + math_force_eval (force_underflow); + } if (huge + x > one) return x; /* return x with inexact if x!=0 */ } |