summaryrefslogtreecommitdiff
path: root/toolchain/uClibc/patches-0.9.30.1/150-c99_ldbl_math.patch
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/uClibc/patches-0.9.30.1/150-c99_ldbl_math.patch')
-rw-r--r--toolchain/uClibc/patches-0.9.30.1/150-c99_ldbl_math.patch474
1 files changed, 0 insertions, 474 deletions
diff --git a/toolchain/uClibc/patches-0.9.30.1/150-c99_ldbl_math.patch b/toolchain/uClibc/patches-0.9.30.1/150-c99_ldbl_math.patch
deleted file mode 100644
index f371843..0000000
--- a/toolchain/uClibc/patches-0.9.30.1/150-c99_ldbl_math.patch
+++ /dev/null
@@ -1,474 +0,0 @@
-Index: uClibc-0.9.30.1/libm/ldouble_wrappers.c
-===================================================================
---- uClibc-0.9.30.1/libm/ldouble_wrappers.c (revision 25552)
-+++ uClibc-0.9.30.1/libm/ldouble_wrappers.c (working copy)
-@@ -13,6 +13,16 @@
- #include "math.h"
- #include <complex.h>
-
-+#if defined __NO_LONG_DOUBLE_MATH
-+# define int_WRAPPER_C99(func) /* not needed */
-+# else
-+# define int_WRAPPER_C99(func) \
-+int func##l(long double x) \
-+{ \
-+ return func((double) x); \
-+} \
-+libm_hidden_def(func##l)
-+#endif
-
- /* Implement the following, as defined by SuSv3 */
- #if 0
-@@ -543,46 +553,28 @@ long double truncl (long double x)
- #endif
-
-
--#ifdef __DO_C99_MATH__
-+#if defined __DO_C99_MATH__
-
- #ifdef L_fpclassifyl
--int __fpclassifyl (long double x)
--{
-- return __fpclassify ( (double) x );
--}
--libm_hidden_def(__fpclassifyl)
-+int_WRAPPER_C99(__fpclassify)
- #endif
-
- #ifdef L_finitel
--int __finitel (long double x)
--{
-- return __finite ( (double)x );
--}
--libm_hidden_def(__finitel)
-+int_WRAPPER_C99(__finite)
- #endif
-
- #ifdef L_signbitl
--int __signbitl (long double x)
--{
-- return __signbitl ( (double)x );
--}
--libm_hidden_def(__signbitl)
-+int_WRAPPER_C99(__signbit)
- #endif
-
- #ifdef L_isnanl
--int __isnanl (long double x)
--{
-- return __isnan ( (double)x );
--}
--libm_hidden_def(__isnanl)
-+int_WRAPPER_C99(__isnan)
- #endif
-
- #ifdef L_isinfl
--int __isinfl (long double x)
--{
-- return __isinf ( (double)x );
--}
--libm_hidden_def(__isinfl)
-+int_WRAPPER_C99(__isinf)
- #endif
-
--#endif
-+#endif /* DO_C99_MATH */
-+
-+#undef int_WRAPPER_C99
-Index: uClibc-0.9.30.1/libm/nan.c
-===================================================================
---- uClibc-0.9.30.1/libm/nan.c (revision 25552)
-+++ uClibc-0.9.30.1/libm/nan.c (working copy)
-@@ -45,7 +45,7 @@ float nanf (const char *tagp)
- }
- libm_hidden_def(nanf)
-
--#if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+#if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ && !defined __NO_LONG_DOUBLE_MATH
- libm_hidden_proto(nanl)
- long double nanl (const char *tagp)
- {
-Index: uClibc-0.9.30.1/include/math.h
-===================================================================
---- uClibc-0.9.30.1/include/math.h (revision 25552)
-+++ uClibc-0.9.30.1/include/math.h (working copy)
-@@ -118,7 +118,7 @@ __BEGIN_DECLS
- # undef __MATH_PRECNAME
-
- # if (__STDC__ - 0 || __GNUC__ - 0) \
-- && (defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ || defined __LDBL_COMPAT)
-+ && (!defined __NO_LONG_DOUBLE_MATH || defined __LDBL_COMPAT)
- # ifdef __LDBL_COMPAT
-
- # ifdef __USE_ISOC99
-@@ -230,7 +230,7 @@ enum
- };
-
- /* Return number of classification appropriate for X. */
--# ifndef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# ifdef __NO_LONG_DOUBLE_MATH
- # define fpclassify(x) \
- (sizeof (x) == sizeof (float) ? __fpclassifyf (x) : __fpclassify (x))
- # else
-@@ -242,7 +242,7 @@ enum
- # endif
-
- /* Return nonzero value if sign of X is negative. */
--# ifndef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# ifdef __NO_LONG_DOUBLE_MATH
- # define signbit(x) \
- (sizeof (x) == sizeof (float) ? __signbitf (x) : __signbit (x))
- # else
-@@ -254,7 +254,7 @@ enum
- # endif
-
- /* Return nonzero value if X is not +-Inf or NaN. */
--# ifndef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# ifdef __NO_LONG_DOUBLE_MATH
- # define isfinite(x) \
- (sizeof (x) == sizeof (float) ? __finitef (x) : __finite (x))
- # else
-@@ -270,7 +270,7 @@ enum
-
- /* Return nonzero value if X is a NaN. We could use `fpclassify' but
- we already have this functions `__isnan' and it is faster. */
--# ifndef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# ifdef __NO_LONG_DOUBLE_MATH
- # define isnan(x) \
- (sizeof (x) == sizeof (float) ? __isnanf (x) : __isnan (x))
- # else
-@@ -282,7 +282,7 @@ enum
- # endif
-
- /* Return nonzero value is X is positive or negative infinity. */
--# ifndef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# ifdef __NO_LONG_DOUBLE_MATH
- # define isinf(x) \
- (sizeof (x) == sizeof (float) ? __isinff (x) : __isinf (x))
- # else
-Index: uClibc-0.9.30.1/include/tgmath.h
-===================================================================
---- uClibc-0.9.30.1/include/tgmath.h (revision 25552)
-+++ uClibc-0.9.30.1/include/tgmath.h (working copy)
-@@ -36,7 +36,7 @@
-
- #if __GNUC_PREREQ (2, 7)
-
--# ifndef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# ifdef __NO_LONG_DOUBLE_MATH
- # define __tgml(fct) fct
- # else
- # define __tgml(fct) fct ## l
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/powerpc/bits/wordsize.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/powerpc/bits/wordsize.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/powerpc/bits/wordsize.h (working copy)
-@@ -7,13 +7,13 @@
- # define __WORDSIZE 32
- #endif
-
--#if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ && !defined __LONG_DOUBLE_MATH_OPTIONAL
-+#if !defined __NO_LONG_DOUBLE_MATH && !defined __LONG_DOUBLE_MATH_OPTIONAL
-
- /* Signal the glibc ABI didn't used to have a `long double'.
- The changes all the `long double' function variants to be redirects
- to the double functions. */
- # define __LONG_DOUBLE_MATH_OPTIONAL 1
- # ifndef __LONG_DOUBLE_128__
--# undef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
- # endif
- #endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/powerpc/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/powerpc/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/powerpc/bits/mathdef.h (working copy)
-@@ -65,11 +65,13 @@ typedef double double_t;
-
- #endif /* ISO C99 */
-
--#ifdef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+#ifndef __NO_LONG_DOUBLE_MATH
- #include <bits/wordsize.h>
- /* Signal that we do not really have a `long double'. The disables the
- declaration of all the `long double' function variants. */
- # if __WORDSIZE == 32
--# undef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
-+# elif !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
- # endif /* __WORDSIZE == 32 */
--#endif /* __UCLIBC_HAS_LONG_DOUBLE_MATH__ */
-+#endif /* __NO_LONG_DOUBLE_MATH */
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/arm/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/arm/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/arm/bits/mathdef.h (working copy)
-@@ -34,3 +34,11 @@ typedef double double_t; /* `double' exp
- # define FP_ILOGBNAN (2147483647)
-
- #endif /* ISO C99 */
-+
-+#ifndef __NO_LONG_DOUBLE_MATH
-+/* Signal that we do not really have a `long double'. This disables the
-+ declaration of all the `long double' function variants. */
-+/* XXX The FPA does support this but the patterns in GCC are currently
-+ turned off. */
-+# define __NO_LONG_DOUBLE_MATH 1
-+#endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/m68k/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/m68k/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/m68k/bits/mathdef.h (working copy)
-@@ -36,3 +36,7 @@ typedef long double double_t; /* `double
- # define FP_ILOGBNAN (2147483647)
-
- #endif /* ISO C99 */
-+
-+#if !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
-+#endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/alpha/bits/wordsize.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/alpha/bits/wordsize.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/alpha/bits/wordsize.h (working copy)
-@@ -18,13 +18,13 @@
-
- #define __WORDSIZE 64
-
--#if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ && !defined __LONG_DOUBLE_MATH_OPTIONAL
-+#if !defined __NO_LONG_DOUBLE_MATH && !defined __LONG_DOUBLE_MATH_OPTIONAL
-
- /* Signal that we didn't used to have a `long double'. The changes all
- the `long double' function variants to be redirects to the double
- functions. */
- # define __LONG_DOUBLE_MATH_OPTIONAL 1
- # ifndef __LONG_DOUBLE_128__
--# undef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
- # endif
- #endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/alpha/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/alpha/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/alpha/bits/mathdef.h (working copy)
-@@ -78,3 +78,7 @@ typedef double double_t;
-
- # endif /* GNUC before 3.4 */
- #endif /* COMPLEX_H */
-+
-+#if !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
-+#endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/common/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/common/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/common/bits/mathdef.h (working copy)
-@@ -35,3 +35,9 @@ typedef double double_t; /* `double' exp
- # define FP_ILOGBNAN 2147483647
-
- #endif /* ISO C99 */
-+
-+#ifndef __NO_LONG_DOUBLE_MATH
-+/* Signal that we do not really have a `long double'. The disables the
-+ declaration of all the `long double' function variants. */
-+# define __NO_LONG_DOUBLE_MATH 1
-+#endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/i386/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/i386/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/i386/bits/mathdef.h (working copy)
-@@ -44,3 +44,7 @@ typedef long double double_t; /* `double
- # define FP_ILOGBNAN (-2147483647 - 1)
-
- #endif /* ISO C99 */
-+
-+#if !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
-+#endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/nios2/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/nios2/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/nios2/bits/mathdef.h (working copy)
-@@ -34,3 +34,11 @@ typedef double double_t; /* `double' exp
- # define FP_ILOGBNAN (2147483647)
-
- #endif /* ISO C99 */
-+
-+#ifndef __NO_LONG_DOUBLE_MATH
-+/* Signal that we do not really have a `long double'. This disables the
-+ declaration of all the `long double' function variants. */
-+/* XXX The FPA does support this but the patterns in GCC are currently
-+ turned off. */
-+# define __NO_LONG_DOUBLE_MATH 1
-+#endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/x86_64/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/x86_64/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/x86_64/bits/mathdef.h (working copy)
-@@ -46,3 +46,7 @@ typedef long double double_t; /* `double
- # define FP_ILOGBNAN (-2147483647 - 1)
-
- #endif /* ISO C99 */
-+
-+#if !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
-+#endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/xtensa/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/xtensa/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/xtensa/bits/mathdef.h (working copy)
-@@ -36,8 +36,8 @@ typedef double double_t; /* `double' exp
-
- #endif /* ISO C99 */
-
--#if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+#ifndef __NO_LONG_DOUBLE_MATH
- /* Signal that we do not really have a `long double'. The disables the
- declaration of all the `long double' function variants. */
--# undef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
- #endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/ia64/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/ia64/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/ia64/bits/mathdef.h (working copy)
-@@ -35,3 +35,7 @@ typedef double double_t; /* `double' exp
- # define FP_ILOGBNAN 2147483647
-
- #endif /* ISO C99 */
-+
-+#if !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
-+#endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/mips/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/mips/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/mips/bits/mathdef.h (working copy)
-@@ -39,8 +39,10 @@ typedef double double_t; /* `double' exp
-
- #endif /* ISO C99 */
-
--#if defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ && _MIPS_SIM == _ABIO32
-+#if ! defined __NO_LONG_DOUBLE_MATH && _MIPS_SIM == _ABIO32
- /* Signal that we do not really have a `long double'. This disables the
- declaration of all the `long double' function variants. */
--# error defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ and _MIPS_SIM == _ABIO32
-+# define __NO_LONG_DOUBLE_MATH 1
-+#elif !defined __NO_LONG_DOUBLE_MATH && !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
- #endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/nios/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/nios/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/nios/bits/mathdef.h (working copy)
-@@ -34,3 +34,11 @@ typedef double double_t; /* `double' exp
- # define FP_ILOGBNAN (2147483647)
-
- #endif /* ISO C99 */
-+
-+#ifndef __NO_LONG_DOUBLE_MATH
-+/* Signal that we do not really have a `long double'. This disables the
-+ declaration of all the `long double' function variants. */
-+/* XXX The FPA does support this but the patterns in GCC are currently
-+ turned off. */
-+# define __NO_LONG_DOUBLE_MATH 1
-+#endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/wordsize.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/wordsize.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/wordsize.h (working copy)
-@@ -6,7 +6,7 @@
- # define __WORDSIZE 32
- #endif
-
--#if 0 /* uClibc: done in mathdefs.h: defined __UCLIBC_HAS_LONG_DOUBLE_MATH__ && !defined __LONG_DOUBLE_MATH_OPTIONAL*/
-+#if 0 /* uClibc: done in mathdefs.h: !defined __NO_LONG_DOUBLE_MATH && !defined __LONG_DOUBLE_MATH_OPTIONAL*/
-
- # if __WORDSIZE == 32
- /* Signal that in 32bit ABI we didn't used to have a `long double'.
-@@ -14,7 +14,7 @@
- to the double functions. */
- # define __LONG_DOUBLE_MATH_OPTIONAL 1
- # ifndef __LONG_DOUBLE_128__
--# undef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
- # endif
- # endif
- #endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/mathdef.h (working copy)
-@@ -57,13 +57,15 @@ typedef double double_t;
-
- #endif /* ISO C99 */
-
--#ifdef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+#ifndef __NO_LONG_DOUBLE_MATH
-
- # if __WORDSIZE == 32
- /* Signal that in 32bit ABI we do not really have a `long double'.
- The disables the declaration of all the `long double' function
- variants. */
--# undef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
-+# elif !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# define __NO_LONG_DOUBLE_MATH 1
- # endif
-
- #endif
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/mathinline.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/mathinline.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/sparc/bits/mathinline.h (working copy)
-@@ -37,7 +37,7 @@
-
- # if __WORDSIZE == 32
-
--# ifdef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# ifndef __NO_LONG_DOUBLE_MATH
-
- # define __unordered_cmp(x, y) \
- (__extension__ \
-@@ -157,7 +157,7 @@ __NTH (__signbit (double __x))
- return __u.__i[0] < 0;
- }
-
--# ifdef __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# ifndef __NO_LONG_DOUBLE_MATH
- __MATH_INLINE int
- __NTH (__signbitl (long double __x))
- {
-@@ -219,7 +219,7 @@ __NTH (sqrtl (long double __x))
- _Qp_sqrt (&__r, &__x);
- return __r;
- }
--# elif defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# elif !defined __NO_LONG_DOUBLE_MATH
- __MATH_INLINE long double
- sqrtl (long double __x) __THROW
- {
-@@ -257,7 +257,7 @@ __ieee754_sqrtl (long double __x)
- _Qp_sqrt(&__r, &__x);
- return __r;
- }
--# elif defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-+# elif !defined __NO_LONG_DOUBLE_MATH
- __MATH_INLINE long double
- __ieee754_sqrtl (long double __x)
- {
-Index: uClibc-0.9.30.1/libc/sysdeps/linux/sh/bits/mathdef.h
-===================================================================
---- uClibc-0.9.30.1/libc/sysdeps/linux/sh/bits/mathdef.h (revision 25552)
-+++ uClibc-0.9.30.1/libc/sysdeps/linux/sh/bits/mathdef.h (working copy)
-@@ -61,3 +61,9 @@ typedef double double_t;
- # define FP_ILOGBNAN 0x7fffffff
-
- #endif /* ISO C99 */
-+
-+#ifndef __NO_LONG_DOUBLE_MATH
-+/* Signal that we do not really have a `long double'. The disables the
-+ declaration of all the `long double' function variants. */
-+# define __NO_LONG_DOUBLE_MATH 1
-+#endif