use #if LDBL_MANT_DIG == ... instead of custom LD80 etc macros
authornsz <nsz@port70.net>
Mon, 5 Mar 2012 10:50:39 +0000 (11:50 +0100)
committernsz <nsz@port70.net>
Mon, 5 Mar 2012 10:50:39 +0000 (11:50 +0100)
58 files changed:
src/internal/ldhack.h
src/math/__cosl.c
src/math/__fpclassifyl.c
src/math/__invtrigl.c
src/math/__invtrigl.h
src/math/__rem_pio2l.h
src/math/__signbitl.c
src/math/__sinl.c
src/math/__tanl.c
src/math/acoshl.c
src/math/acosl.c
src/math/asinhl.c
src/math/asinl.c
src/math/atan2l.c
src/math/atanhl.c
src/math/atanl.c
src/math/cbrtl.c
src/math/ceill.c
src/math/copysignl.c
src/math/coshl.c
src/math/cosl.c
src/math/erfl.c
src/math/exp2l.c
src/math/expl.c
src/math/expm1l.c
src/math/fabsl.c
src/math/floorl.c
src/math/fmal.c
src/math/fmodl.c
src/math/hypotl.c
src/math/ilogbl.c
src/math/lgammal.c
src/math/llrintl.c
src/math/llroundl.c
src/math/log10l.c
src/math/log1pl.c
src/math/log2l.c
src/math/logbl.c
src/math/logl.c
src/math/lrintl.c
src/math/lroundl.c
src/math/modfl.c
src/math/nearbyintl.c
src/math/nextafterl.c
src/math/nexttoward.c
src/math/nexttowardf.c
src/math/powl.c
src/math/remainderl.c
src/math/remquol.c
src/math/rintl.c
src/math/roundl.c
src/math/scalbnl.c
src/math/sinhl.c
src/math/sinl.c
src/math/tanhl.c
src/math/tanl.c
src/math/tgammal.c
src/math/truncl.c

index 32fb711..25ec802 100644 (file)
@@ -4,15 +4,8 @@
 #include <float.h>
 #include <stdint.h>
 
-// FIXME: conveniance macros
-
-#undef LD64
-#undef LD80
-#undef LD128
 #if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
-#define LD64 1
 #elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
-#define LD80 1
 union ldshape {
        long double value;
        struct {
@@ -23,7 +16,6 @@ union ldshape {
        } bits;
 };
 #elif LDBL_MANT_DIG == 113 && LDBL_MAX_EXP == 16384
-#define LD128 1
 union ldshape {
        long double value;
        struct {
index bac0303..9ea51ec 100644 (file)
@@ -14,7 +14,7 @@
 
 #include "libm.h"
 
-#if LD80
+#if LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 /*
  * ld80 version of __cos.c.  See __cos.c for most comments.
  */
index 308dc21..c886e5a 100644 (file)
@@ -1,8 +1,8 @@
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 int __fpclassifyl(long double x)
 {
        union ldshape u = { x };
@@ -13,7 +13,7 @@ int __fpclassifyl(long double x)
                return u.bits.m & ~((uint64_t)1<<63) ? FP_NAN : FP_INFINITE;
        return u.bits.m & (uint64_t)1<<63 ? FP_NORMAL : FP_NAN;
 }
-#elif LD128
+#elif LDBL_MANT_DIG == 113 && LDBL_MAX_EXP == 16384
 int __fpclassifyl(long double x)
 {
        union ldshape u = { x };
index 110891d..a821842 100644 (file)
@@ -27,7 +27,7 @@
 
 #include "__invtrigl.h"
 
-#if LD80
+#if LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 /*
  * asinl() and acosl()
  */
index 5ffde70..c3ad3c4 100644 (file)
@@ -27,7 +27,7 @@
 
 #include "libm.h"
 
-#if LD80
+#if LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 
 #define BIAS            (LDBL_MAX_EXP - 1)
 #define MANH_SIZE       LDBL_MANH_SIZE
index 130a8f0..37f3bd2 100644 (file)
@@ -13,7 +13,7 @@
  * Optimized by Bruce D. Evans.
  */
 #include "libm.h"
-#if LD80
+#if LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 /* ld80 version of __rem_pio2(x,y)
  *
  * return the remainder of x rem pi/2 in y[0]+y[1]
index fcc9e3c..81adb6c 100644 (file)
@@ -1,7 +1,7 @@
 #include "libm.h"
 
 // FIXME: should be a macro
-#if LD80 || LD128
+#if (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 int __signbitl(long double x)
 {
        union ldshape u = {x};
index 667c94b..71851d8 100644 (file)
@@ -13,7 +13,7 @@
 
 #include "libm.h"
 
-#if LD80
+#if LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 /*
  * ld80 version of __sin.c.  See __sin.c for most comments.
  */
index 40f9918..f842543 100644 (file)
@@ -12,7 +12,7 @@
 
 #include "libm.h"
 
-#if LD80
+#if LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 /*
  * ld80 version of __tan.c.  See __tan.c for most comments.
  */
index 9e37a38..d8310a7 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double acoshl(long double x)
 {
        return acosh(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 static const long double
 one = 1.0,
 ln2 = 6.931471805599453094287e-01L; /* 0x3FFE, 0xB17217F7, 0xD1CF79AC */
index f52dedd..21e6c95 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double acosl(long double x)
 {
        return acos(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 #include "__invtrigl.h"
 
 static const long double
index a86e2f2..b2edf90 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double asinhl(long double x)
 {
        return asinh(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 static const long double
 one  = 1.000000000000000000000e+00L, /* 0x3FFF, 0x00000000, 0x00000000 */
 ln2  = 6.931471805599453094287e-01L, /* 0x3FFE, 0xB17217F7, 0xD1CF79AC */
index a513bf2..370997b 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double asinl(long double x)
 {
        return asin(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 #include "__invtrigl.h"
 static const long double
 one = 1.00000000000000000000e+00,
index f9002cb..64ec12e 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double atan2l(long double y, long double x)
 {
        return atan2(y, x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 #include "__invtrigl.h"
 static volatile long double
 tiny = 1.0e-300;
index bc0d7ff..af0f856 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double atanhl(long double x)
 {
        return atanh(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 static const long double zero = 0.0, one = 1.0, huge = 1e4900L;
 
 long double atanhl(long double x)
index 35108c4..4e99955 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double atanl(long double x)
 {
        return atan(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 #include "__invtrigl.h"
 static const long double
 one = 1.0,
index ecbd7be..d138b9f 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double cbrtl(long double x)
 {
        return cbrt(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 #define BIAS    (LDBL_MAX_EXP - 1)
 static const unsigned
 B1 = 709958130; /* B1 = (127-127.0/3-0.03306235651)*2**23 */
index 9459c73..b938cc7 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double ceill(long double x)
 {
        return ceil(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 
 #ifdef LDBL_IMPLICIT_NBIT
 #define MANH_SIZE       (LDBL_MANH_SIZE + 1)
index 93cb1c5..72a2148 100644 (file)
@@ -1,11 +1,11 @@
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double copysignl(long double x, long double y)
 {
        return copysign(x, y);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 long double copysignl(long double x, long double y)
 {
        union ldshape ux = {x}, uy = {y};
index 7564d8c..bcc9128 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double coshl(long double x)
 {
        return cosh(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 static const long double one = 1.0, half = 0.5, huge = 1.0e4900L;
 
 long double coshl(long double x)
index 4d43629..2c650cd 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double cosl(long double x) {
        return cos(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 #include "__rem_pio2l.h"
 
 long double cosl(long double x)
index 86c2bad..c38d745 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double erfl(long double x)
 {
        return erfl(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 static const long double
 tiny = 1e-4931L,
 half = 0.5L,
index c90a6f2..ce085a7 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double exp2l(long double x)
 {
        return exp2l(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 
 #define TBLBITS 7
 #define TBLSIZE (1 << TBLBITS)
index f9fcae7..ed794fb 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double expl(long double x)
 {
        return x;
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 
 static long double P[3] = {
  1.2617719307481059087798E-4L,
index da2cffe..2f94dfa 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double expm1l(long double x)
 {
        return expm1(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 static const long double MAXLOGL = 1.1356523406294143949492E4L;
 
 /* exp(x) - 1 = x + 0.5 x^2 + x^3 P(x)/Q(x)
index f1dec1f..711d908 100644 (file)
@@ -1,10 +1,10 @@
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double fabsl(long double x)
 {
        return fabs(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 long double fabsl(long double x)
 {
        union ldshape u = {x};
index 184b7ff..08f6ba2 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double floorl(long double x)
 {
        return floor(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 
 #ifdef LDBL_IMPLICIT_NBIT
 #define MANH_SIZE       (LDBL_MANH_SIZE + 1)
index ca2e664..200bd5a 100644 (file)
 
 
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double fmal(long double x, long double y, long double z)
 {
        return fma(x, y, z);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 #include <fenv.h>
 
 /*
index 10720e2..2e3eec1 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double fmodl(long double x, long double y)
 {
        return fmod(x, y);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 
 #define BIAS (LDBL_MAX_EXP - 1)
 
index a2cd78f..f4a64f7 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double hypotl(long double x, long double y)
 {
        return hypot(x, y);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 
 #define GET_LDBL_EXPSIGN(i, v) do {     \
        union IEEEl2bits uv;            \
index 03c8f21..099c81a 100644 (file)
@@ -1,11 +1,11 @@
 #include <limits.h>
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 int ilogbl(long double x)
 {
        return ilogb(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 int ilogbl(long double x)
 {
        union ldshape u = {x};
index db2e34d..603477c 100644 (file)
@@ -92,12 +92,12 @@ long double lgammal(long double x)
        return lgammal_r(x, &signgam);
 }
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double lgammal_r(long double x, int *sg)
 {
        return lgamma_r(x, sg);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 static const long double
 half = 0.5L,
 one = 1.0L,
index b8113a5..6b0838d 100644 (file)
@@ -1,5 +1,5 @@
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long long llrintl(long double x)
 {
        return llrint(x);
index a9ed0da..9e2cfdc 100644 (file)
@@ -1,5 +1,5 @@
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long long llroundl(long double x)
 {
        return llround(x);
index 12c71f6..3a85883 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double log10l(long double x)
 {
        return log10(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 /* Coefficients for log(1+x) = x - x**2/2 + x**3 P(x)/Q(x)
  * 1/sqrt(2) <= x < sqrt(2)
  * Theoretical peak relative error = 6.2e-22
index 079b395..7aafc5c 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double log1pl(long double x)
 {
        return log1p(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 /* Coefficients for log(1+x) = x - x^2 / 2 + x^3 P(x)/Q(x)
  * 1/sqrt(2) <= x < sqrt(2)
  * Theoretical peak relative error = 2.32e-20
index 8198af7..cf08b0a 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double log2l(long double x)
 {
        return log2(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 /* Coefficients for ln(1+x) = x - x**2/2 + x**3 P(x)/Q(x)
  * 1/sqrt(2) <= x < sqrt(2)
  * Theoretical peak relative error = 6.2e-22
index 58d8eea..5d04abd 100644 (file)
@@ -1,6 +1,6 @@
 #include <limits.h>
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double logbl(long double x)
 {
        return logb(x);
index 9dbbfee..2139b2a 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double logl(long double x)
 {
        return log(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 /* Coefficients for log(1+x) = x - x**2/2 + x**3 P(x)/Q(x)
  * 1/sqrt(2) <= x < sqrt(2)
  * Theoretical peak relative error = 2.32e-20
index 4eedb38..7c09653 100644 (file)
@@ -1,5 +1,5 @@
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long lrintl(long double x)
 {
        return lrint(x);
index bbe719e..1469127 100644 (file)
@@ -1,5 +1,5 @@
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long lroundl(long double x)
 {
        return lround(x);
index d1a2360..2ca67b1 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double modfl(long double x, long double *iptr)
 {
        return modf(x, iptr);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 
 #if LDBL_MANL_SIZE > 32
 #define MASK    ((uint64_t)-1)
index bcc707a..b58527c 100644 (file)
@@ -1,5 +1,5 @@
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double nearbyintl(long double x)
 {
        return nearbyint(x);
index 1522042..1c6d537 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double nextafterl(long double x, long double y)
 {
        return nextafter(x, y);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 long double nextafterl(long double x, long double y)
 {
        volatile long double t;
index 6f4bae5..5e12c48 100644 (file)
  */
 
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 double nexttoward(double x, long double y)
 {
        return nextafter(x, y);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 double nexttoward(double x, long double y)
 {
        union IEEEl2bits uy;
index fc0948c..5e1616a 100644 (file)
@@ -12,9 +12,9 @@
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 // FIXME
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 #define LDBL_INFNAN_EXP (LDBL_MAX_EXP * 2 - 1)
 
 float nexttowardf(float x, long double y)
index c83289b..c829c18 100644 (file)
@@ -69,7 +69,7 @@
 
 #include "libm.h"
 
-#if LD80
+#if LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 
 /* Table size */
 #define NXT 32
index d5656da..7794560 100644 (file)
@@ -1,5 +1,5 @@
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double remainderl(long double x, long double y)
 {
        return remainder(x, y);
index 596170b..cacc5ba 100644 (file)
  */
 
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double remquol(long double x, long double y, int *quo)
 {
        return remquo(x, y, quo);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 
 #define BIAS (LDBL_MAX_EXP - 1)
 
index 46eecff..1cc35df 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double rintl(long double x)
 {
        return rint(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 
 #define BIAS    (LDBL_MAX_EXP - 1)
 
index b92b8fb..ce56e8a 100644 (file)
@@ -26,7 +26,7 @@
  */
 
 #include "libm.h"
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double roundl(long double x)
 {
        return round(x);
index ff5db51..5510186 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double scalbnl(long double x, int n)
 {
        return scalbn(x, n);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 static const long double
 huge = 0x1p16000L,
 tiny = 0x1p-16000L;
index 14003cc..2252dec 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double sinhl(long double x)
 {
        return sinh(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 static const long double one = 1.0, huge = 1.0e4931L;
 
 long double sinhl(long double x)
index 5b3f60d..0b1aeb7 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double sinl(long double x)
 {
        return sin(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 #include "__rem_pio2l.h"
 
 long double sinl(long double x)
index 445793f..e62be59 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double tanhl(long double x)
 {
        return tanh(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 static const long double one=1.0, two=2.0, tiny = 1.0e-4900L;
 
 long double tanhl(long double x)
index cfd9666..462ead9 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double tanl(long double x)
 {
        return tan(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 #include "__rem_pio2l.h"
 
 long double tanl(long double x)
index 1bd6a33..e590550 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double tgammal(long double x)
 {
        return tgamma(x);
 }
-#elif LD80
+#elif LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 /*
 tgamma(x+2) = tgamma(x+2) P(x)/Q(x)
 0 <= x <= 1
index 57b6489..d817e9a 100644 (file)
 
 #include "libm.h"
 
-#if LD64
+#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
 long double truncl(long double x)
 {
        return trunc(x);
 }
-#elif LD80 || LD128
+#elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 #ifdef LDBL_IMPLICIT_NBIT
 #define MANH_SIZE       (LDBL_MANH_SIZE + 1)
 #else