diff options
Diffstat (limited to 'sysdeps/ieee754/ldbl-128ibm/w_expl.c')
-rw-r--r-- | sysdeps/ieee754/ldbl-128ibm/w_expl.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/sysdeps/ieee754/ldbl-128ibm/w_expl.c b/sysdeps/ieee754/ldbl-128ibm/w_expl.c index fb5c8d3..c9d44b6 100644 --- a/sysdeps/ieee754/ldbl-128ibm/w_expl.c +++ b/sysdeps/ieee754/ldbl-128ibm/w_expl.c @@ -2,9 +2,6 @@ #include <math_private.h> #include <math_ldbl_opt.h> -static const long double o_thres = 709.78271289338399678773454114191496482L; -static const long double u_thres = -744.44007192138126231410729844608163411L; - long double __expl(long double x) /* wrapper exp */ { long double z; @@ -13,9 +10,9 @@ long double __expl(long double x) /* wrapper exp */ return z; if (isfinite(x)) { - if (x >= o_thres) + if (!isfinite (z)) return __kernel_standard_l(x,x,206); /* exp overflow */ - else if (x <= u_thres) + else if (z == 0.0L) return __kernel_standard_l(x,x,207); /* exp underflow */ } return z; |