about summary refs log tree commit diff
path: root/src/stdlib/frexpl.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/stdlib/frexpl.c')
-rw-r--r--src/stdlib/frexpl.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/stdlib/frexpl.c b/src/stdlib/frexpl.c
index ecfff007..3472bf70 100644
--- a/src/stdlib/frexpl.c
+++ b/src/stdlib/frexpl.c
@@ -1,5 +1,8 @@
 #include <math.h>
 #include <inttypes.h>
+#include <float.h>
+
+#if LDBL_MANT_DIG == 64 && LDBL_MAX_EXP == 16384
 
 /* This version is for 80-bit little endian long double */
 
@@ -23,3 +26,12 @@ long double frexpl(long double x, int *e)
 	y.hw[4] |= 0x3ffe;
 	return y.ld;
 }
+
+#else
+
+long double frexpl(long double x, int *e)
+{
+	return frexp(x, e);
+}
+
+#endif