In message: <[EMAIL PROTECTED]>
Loren James Rittle <[EMAIL PROTECTED]> writes:
: Yet, the FP hardware is actually configured by default to provide
: `long double' as:
:
: #define LDBL_MANT_DIG 53
: #define LDBL_MIN_EXP (-16381)
: #define LDBL_MAX_EXP 16384
:
: Indeed, FP code using long double generated by gcc 2.95.X, installed
: as the FreeBSD 4 system compiler, uses the full exponent range of
: -16381 to 16384. However, printf(), etc loses on that exponent range
: and reports Inf. I suspect this is why the system header misreports
: the FP hardware, thus the header describes the largest printable long
: double value, not the largest that could be held in a calculation.
I have patches to fix these constants, but not to fix printf, and co,
to really support the full precision of long double. Even NetBSD
doesn't do that.
: Anyways, two questions for FreeBSD maintainers. How should gcc, as
: provided from the FSF, describe the long double FP format for
: FreeBSD/i386 4.x? Shall we assume that no changes for FreeBSD 5.x
: will occur?
No. You should assume that for i386, at least, that long double will
have the right LDBL_ constants. I've had them in my local tree for
about 3 months now and just haven't found the time to commit to
-current. I'll find the time right now.
Warner
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message