From 2a8ab7f26591053136bc17be34499db5c64e89d6 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Tue, 13 Mar 2012 00:31:48 -0700 Subject: Fix generic ldbl-128 expm1l just like x86-64 and i386 variants were. * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Use expl for large parameters. --- sysdeps/ieee754/ldbl-128/s_expm1l.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'sysdeps') diff --git a/sysdeps/ieee754/ldbl-128/s_expm1l.c b/sysdeps/ieee754/ldbl-128/s_expm1l.c index 17769dd6a3..ea63501819 100644 --- a/sysdeps/ieee754/ldbl-128/s_expm1l.c +++ b/sysdeps/ieee754/ldbl-128/s_expm1l.c @@ -102,6 +102,11 @@ __expm1l (long double x) ix = u.parts32.w0; sign = ix & 0x80000000; ix &= 0x7fffffff; + if (!sign && ix >= 0x40060000) + { + /* If num is positive and exp >= 6 use plain exp. */ + return __expl (x); + } if (ix >= 0x7fff0000) { /* Infinity. */ -- cgit 1.4.1