summaryrefslogtreecommitdiff
path: root/lib/msun/src/math.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/msun/src/math.h')
-rw-r--r--lib/msun/src/math.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/msun/src/math.h b/lib/msun/src/math.h
index 76598e3b049a..b85ef96ce7cb 100644
--- a/lib/msun/src/math.h
+++ b/lib/msun/src/math.h
@@ -113,7 +113,10 @@ extern const union __nan_un {
#define isunordered(x, y) (isnan(x) || isnan(y))
#endif /* __MATH_BUILTIN_RELOPS */
-#define signbit(x) __signbit(x)
+#define signbit(x) \
+ ((sizeof (x) == sizeof (float)) ? __signbitf(x) \
+ : (sizeof (x) == sizeof (double)) ? __signbit(x) \
+ : __signbitl(x))
typedef __double_t double_t;
typedef __float_t float_t;
@@ -215,6 +218,8 @@ int __isnormalf(float) __pure2;
int __isnormal(double) __pure2;
int __isnormall(long double) __pure2;
int __signbit(double) __pure2;
+int __signbitf(float) __pure2;
+int __signbitl(long double) __pure2;
double acos(double);
double asin(double);