summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/libc/powerpc/_fpmath.h14
-rw-r--r--lib/libc/powerpc/stdlib/gdtoa.mk5
-rw-r--r--sys/powerpc/include/float.h18
3 files changed, 17 insertions, 20 deletions
diff --git a/lib/libc/powerpc/_fpmath.h b/lib/libc/powerpc/_fpmath.h
index 9672da30f324..d96bac2cd4e8 100644
--- a/lib/libc/powerpc/_fpmath.h
+++ b/lib/libc/powerpc/_fpmath.h
@@ -30,21 +30,19 @@ union IEEEl2bits {
long double e;
struct {
unsigned int sign :1;
- unsigned int exp :15;
- unsigned long long manh :48;
- unsigned long long manl :64;
+ unsigned int exp :11;
+ unsigned int manh :20;
+ unsigned int manl :32;
} bits;
};
#define mask_nbit_l(u) ((void)0)
#define LDBL_IMPLICIT_NBIT
-#define LDBL_MANH_SIZE 48
-#define LDBL_MANL_SIZE 64
+#define LDBL_MANH_SIZE 20
+#define LDBL_MANL_SIZE 32
#define LDBL_TO_ARRAY32(u, a) do { \
(a)[0] = (uint32_t)(u).bits.manl; \
- (a)[1] = (uint32_t)((u).bits.manl >> 32); \
- (a)[2] = (uint32_t)(u).bits.manh; \
- (a)[3] = (uint32_t)((u).bits.manh >> 32); \
+ (a)[1] = (uint32_t)(u).bits.manh; \
} while(0)
diff --git a/lib/libc/powerpc/stdlib/gdtoa.mk b/lib/libc/powerpc/stdlib/gdtoa.mk
index f951a8dcad6b..726531d84360 100644
--- a/lib/libc/powerpc/stdlib/gdtoa.mk
+++ b/lib/libc/powerpc/stdlib/gdtoa.mk
@@ -1,5 +1,4 @@
# $FreeBSD$
-# Long double is quad precision
-GDTOASRCS+=strtopQ.c
-MDSRCS+=machdep_ldisQ.c
+# Long double is 64-bits
+MDSRCS+=machdep_ldisd.c
diff --git a/sys/powerpc/include/float.h b/sys/powerpc/include/float.h
index fff14f404561..77b4044d7e11 100644
--- a/sys/powerpc/include/float.h
+++ b/sys/powerpc/include/float.h
@@ -67,14 +67,14 @@ __END_DECLS
#define DBL_MAX 1.7976931348623157E+308
#define DBL_MAX_10_EXP 308
-#define LDBL_MANT_DIG 113
-#define LDBL_EPSILON 1.925929944387235853055977942584927319E-34L
-#define LDBL_DIG 33
-#define LDBL_MIN_EXP (-16381)
-#define LDBL_MIN 3.362103143112093506262677817321752603E-4932L
-#define LDBL_MIN_10_EXP (-4931)
-#define LDBL_MAX_EXP (+16384)
-#define LDBL_MAX 1.189731495357231765085759326628007016E+4932L
-#define LDBL_MAX_10_EXP (+4932)
+#define LDBL_MANT_DIG DBL_MANT_DIG
+#define LDBL_EPSILON DBL_EPSILON
+#define LDBL_DIG DBL_DIG
+#define LDBL_MIN_EXP DBL_MIN_EXP
+#define LDBL_MIN DBL_MIN
+#define LDBL_MIN_10_EXP DBL_MIN_10_EXP
+#define LDBL_MAX_EXP DBL_MAX_EXP
+#define LDBL_MAX DBL_MAX
+#define LDBL_MAX_10_EXP DBL_MAX_10_EXP
#endif /* _MACHINE_FLOAT_H_ */