summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/sparc/bits
diff options
context:
space:
mode:
authorBernhard Reutner-Fischer <rep.dot.nop@gmail.com>2008-10-03 14:24:28 +0000
committerBernhard Reutner-Fischer <rep.dot.nop@gmail.com>2008-10-03 14:24:28 +0000
commitfeeb0301b31a5ad4ea0594b17e4720bbe3308a3b (patch)
treeae71a3f81309a3068335ec30f021333454bccbc6 /libc/sysdeps/linux/sparc/bits
parent2ba017a2d5af01cc3ef0dc554252a521e8d7c4f8 (diff)
- add long double math wrappers (Ned Ludd)
Diffstat (limited to 'libc/sysdeps/linux/sparc/bits')
-rw-r--r--libc/sysdeps/linux/sparc/bits/mathdef.h6
-rw-r--r--libc/sysdeps/linux/sparc/bits/mathinline.h12
-rw-r--r--libc/sysdeps/linux/sparc/bits/wordsize.h4
3 files changed, 10 insertions, 12 deletions
diff --git a/libc/sysdeps/linux/sparc/bits/mathdef.h b/libc/sysdeps/linux/sparc/bits/mathdef.h
index 7f9bbee81..b1a0d917c 100644
--- a/libc/sysdeps/linux/sparc/bits/mathdef.h
+++ b/libc/sysdeps/linux/sparc/bits/mathdef.h
@@ -57,15 +57,13 @@ typedef double double_t;
#endif /* ISO C99 */
-#ifndef __NO_LONG_DOUBLE_MATH
+#ifdef __UCLIBC_HAS_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. */
-# define __NO_LONG_DOUBLE_MATH 1
-# elif !defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
-# define __NO_LONG_DOUBLE_MATH 1
+# undef __UCLIBC_HAS_LONG_DOUBLE_MATH__
# endif
#endif
diff --git a/libc/sysdeps/linux/sparc/bits/mathinline.h b/libc/sysdeps/linux/sparc/bits/mathinline.h
index 729145e14..66ca0473d 100644
--- a/libc/sysdeps/linux/sparc/bits/mathinline.h
+++ b/libc/sysdeps/linux/sparc/bits/mathinline.h
@@ -37,7 +37,7 @@
# if __WORDSIZE == 32
-# ifndef __NO_LONG_DOUBLE_MATH
+# ifdef __UCLIBC_HAS_LONG_DOUBLE_MATH__
# define __unordered_cmp(x, y) \
(__extension__ \
@@ -94,7 +94,7 @@
# define __unordered_v9cmp(x, y, op, qop) \
(__extension__ \
- ({ unsigned __r; \
+ ({ unsigned __r; \
if (sizeof (x) == 4 && sizeof (y) == 4) \
{ \
float __x = (x); float __y = (y); \
@@ -111,7 +111,7 @@
{ \
long double __x = (x); long double __y = (y); \
extern int _Qp_cmp (const long double *a, const long double *b); \
- __r = qop; \
+ __r = qop; \
} \
__r; }))
@@ -157,7 +157,7 @@ __NTH (__signbit (double __x))
return __u.__i[0] < 0;
}
-# ifndef __NO_LONG_DOUBLE_MATH
+# ifdef __UCLIBC_HAS_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 __NO_LONG_DOUBLE_MATH
+# elif defined __UCLIBC_HAS_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 __NO_LONG_DOUBLE_MATH
+# elif defined __UCLIBC_HAS_LONG_DOUBLE_MATH__
__MATH_INLINE long double
__ieee754_sqrtl (long double __x)
{
diff --git a/libc/sysdeps/linux/sparc/bits/wordsize.h b/libc/sysdeps/linux/sparc/bits/wordsize.h
index c0e600ed5..c8e5bfdea 100644
--- a/libc/sysdeps/linux/sparc/bits/wordsize.h
+++ b/libc/sysdeps/linux/sparc/bits/wordsize.h
@@ -6,7 +6,7 @@
# define __WORDSIZE 32
#endif
-#if 0 /* uClibc: done in mathdefs.h: !defined __NO_LONG_DOUBLE_MATH && !defined __LONG_DOUBLE_MATH_OPTIONAL*/
+#if 0 /* uClibc: done in mathdefs.h: defined __UCLIBC_HAS_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__
-# define __NO_LONG_DOUBLE_MATH 1
+# undef __UCLIBC_HAS_LONG_DOUBLE_MATH__
# endif
# endif
#endif