remove another invalid skip of locking in ungetwc
[oweals/musl.git] / src / math / __signbitl.c
index 81adb6ce38cda82ea0f48fe963728df3796a1838..63b3dc5a08f3d89a3dd39a3ce74d7974317a0aa9 100644 (file)
@@ -1,11 +1,14 @@
 #include "libm.h"
 
-// FIXME: should be a macro
 #if (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384
 int __signbitl(long double x)
 {
        union ldshape u = {x};
-
-       return u.bits.sign;
+       return u.i.se >> 15;
+}
+#elif LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
+int __signbitl(long double x)
+{
+       return __signbit(x);
 }
 #endif