From 34660d73bd0db29469d2758e1b48d2360edf3a2f Mon Sep 17 00:00:00 2001 From: Szabolcs Nagy Date: Wed, 4 Sep 2013 15:52:23 +0000 Subject: math: fix remaining old long double code (erfl, fmal, lgammal, scalbnl) in lgammal don't handle 1 and 2 specially, in fma use the new ldshape union instead of ld80 one. --- src/math/scalbnl.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/math/scalbnl.c') diff --git a/src/math/scalbnl.c b/src/math/scalbnl.c index 7ad7688b..08a4c587 100644 --- a/src/math/scalbnl.c +++ b/src/math/scalbnl.c @@ -8,7 +8,7 @@ long double scalbnl(long double x, int n) #elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384 long double scalbnl(long double x, int n) { - union IEEEl2bits scale; + union ldshape u; if (n > 16383) { x *= 0x1p16383L; @@ -29,8 +29,8 @@ long double scalbnl(long double x, int n) n = -16382; } } - scale.e = 1.0; - scale.bits.exp = 0x3fff + n; - return x * scale.e; + u.f = 1.0; + u.i.se = 0x3fff + n; + return x * u.f; } #endif -- cgit v1.2.1