From 1b8e360e06c4e3596ced7c156b25a04b23fbe627 Mon Sep 17 00:00:00 2001 From: Jeff Johnston Date: Fri, 17 Apr 2009 22:15:43 +0000 Subject: 2009-04-17 Jeff johnston * libc/include/machine/ieeefp.h (_LDBL_EQ_DBL): Remove. * libc/stdlib/local.h (_LDBL_EQ_DBL): Add. * libc/stdlib/strtold.c: Include local.h. * libc/stdlib/wcstold.c: Likewise. * libm/common/atanl.c: Likewise. * libm/common/cosl.c: Likewise. * libm/common/sinl.c: Likewise. * libm/common/modfl.c: Likewise. * libm/common/frexpl.c: Likewise. * libm/common/tanhl.c: Likewise. * libm/common/tanl.c: Likewise. * libm/common/expm1l.c: Likewise. * libm/common/log1pl.c: Likewise. * libm/common/ceill.c: Likewise. * libm/common/fabsl.c: Likewise. * libm/common/floorl.c: Likewise. * libm/common/acosl.c: Likewise. * libm/common/asinl.c: Likewise. * libm/common/atan2l.c: Likewise. * libm/common/coshl.c: Likewise. * libm/common/expl.c: Likewise. * libm/common/fmodl.c: Likewise. * libm/common/hypotl.c: Likewise. * libm/common/ldexpl.c: Likewise. * libm/common/log10l.c: Likewise. * libm/common/logl.c: Likewise. * libm/common/powl.c: Likewise. * libm/common/sqrtl.c: Likewise. * libm/common/copysignl.c: Likewise. * libm/common/ilogbl.c: Likewise. * libm/common/nanl.c: Likewise. * libm/common/cbrtl.c: Likewise. * libm/common/asinhl.c: Likewise. * libm/common/nextafterl.c: Likewise. * libm/common/rintl.c: Likewise. * libm/common/scalbnl.c: Likewise. * libm/common/exp2l.c: Likewise. * libm/common/fdiml.c: Likewise. * libm/common/fmal.c: Likewise. * libm/common/fmaxl.c: Likewise. * libm/common/fminl.c: Likewise. * libm/common/lrintl.c: Likewise. * libm/common/lroundl.c: Likewise. * libm/common/nearbyintl.c: Likewise. * libm/common/remquol.c: Likewise. * libm/common/roundl.c: Likewise. * libm/common/scalblnl.c: Likewise. * libm/common/truncl.c: Likewise. * libm/common/acoshl.c: Likewise. * libm/common/atanhl.c: Likewise. * libm/common/erfcl.c: Likewise. * libm/common/erfl.c: Likewise. * libm/common/lgammal.c: Likewise. * libm/common/remainderl.c: Likewise. * libm/common/tgammal.c: Likewise. * libm/common/sinhl.c: Likewise. * libm/common/llroundl.c: Likewise. * libm/common/llrintl.c: Likewise. * libm/common/local.h: New file with _LDBL_EQ_DBL macro. --- newlib/libc/stdlib/local.h | 9 +++++++++ newlib/libc/stdlib/strtold.c | 1 + newlib/libc/stdlib/wcstold.c | 1 + 3 files changed, 11 insertions(+) (limited to 'newlib/libc/stdlib') diff --git a/newlib/libc/stdlib/local.h b/newlib/libc/stdlib/local.h index 37856f8be..347154ac1 100644 --- a/newlib/libc/stdlib/local.h +++ b/newlib/libc/stdlib/local.h @@ -63,4 +63,13 @@ int __iso_8859_index (const char *); wchar_t __cp_conv[12][0x80]; int __cp_index (const char *); +#include + +/* Check if long double is as wide as double. */ +#if (!defined(__STRICT_ANSI__) || __STDC_VERSION__ > 199901L || \ + defined(__cplusplus)) && defined(LDBL_MANT_DIG) && \ + (DBL_MANT_DIG == LDBL_MANT_DIG && LDBL_MIN_EXP == DBL_MIN_EXP && \ + LDBL_MAX_EXP == DBL_MAX_EXP) + #define _LDBL_EQ_DBL +#endif #endif diff --git a/newlib/libc/stdlib/strtold.c b/newlib/libc/stdlib/strtold.c index 2abd084a9..94f9613d2 100644 --- a/newlib/libc/stdlib/strtold.c +++ b/newlib/libc/stdlib/strtold.c @@ -29,6 +29,7 @@ POSSIBILITY OF SUCH DAMAGE. */ #include +#include "local.h" /* On platforms where long double is as wide as double. */ #ifdef _LDBL_EQ_DBL diff --git a/newlib/libc/stdlib/wcstold.c b/newlib/libc/stdlib/wcstold.c index 6c8a422bb..8b0ba2440 100644 --- a/newlib/libc/stdlib/wcstold.c +++ b/newlib/libc/stdlib/wcstold.c @@ -29,6 +29,7 @@ POSSIBILITY OF SUCH DAMAGE. */ #include +#include "local.h" /* On platforms where long double is as wide as double. */ #ifdef _LDBL_EQ_DBL -- cgit v1.2.3