diff options
| author | Andrew Gallatin <gallatin@FreeBSD.org> | 2004-07-19 23:56:07 +0000 |
|---|---|---|
| committer | Andrew Gallatin <gallatin@FreeBSD.org> | 2004-07-19 23:56:07 +0000 |
| commit | df11547f5d598cf160b2ca751e845b2c29f93a12 (patch) | |
| tree | 3b3b34c6ec21d9a1c093664f2c9f8f4c55392db9 | |
| parent | 757cd67065430f4bb3bf71121273208ff9e483cb (diff) | |
Notes
| -rw-r--r-- | lib/libc/powerpc/_fpmath.h | 14 | ||||
| -rw-r--r-- | lib/libc/powerpc/stdlib/gdtoa.mk | 5 | ||||
| -rw-r--r-- | sys/powerpc/include/float.h | 18 |
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_ */ |
