Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Feb 2003 19:36:55 -0500
From:      Mike Barcroft <mike@FreeBSD.org>
To:        Dag-Erling Smorgrav <des@ofug.org>
Cc:        Kris Kennaway <kris@obsecurity.org>, standards@freebsd.org
Subject:   Re: -fno-builtin world breaks in gperf
Message-ID:  <20030217193655.I74149@espresso.bsdmike.org>
In-Reply-To: <xzp8ywezc7z.fsf@flood.ping.uio.no>; from des@ofug.org on Tue, Feb 18, 2003 at 01:03:44AM %2B0100
References:  <xzp1y2755jc.fsf@flood.ping.uio.no> <20030217213405.GB71679@rot13.obsecurity.org> <xzp8ywezc7z.fsf@flood.ping.uio.no>

next in thread | previous in thread | raw e-mail | index | archive | help
Dag-Erling Smorgrav <des@ofug.org> writes:
> Kris Kennaway <kris@obsecurity.org> writes:
> > On Mon, Feb 17, 2003 at 03:46:15PM +0100, Dag-Erling Smorgrav wrote:
> > > Our libm doesn't seem to support long double at all, yet our libstdc++
> > > requires long double support.
> > I pointed this out a while ago..looks like no-one did anything about
> > it yet.
> 
> I've looked at it, and it looks Hard[tm].  The four architectures I
> tested (alpha, ia32, ia64, sparc64) had four different representations
> for long double:
[...]

You might want to take a look at the fpclassify() implementation.  It
doesn't look like your findings are correct.  Specifically, see the
bitfield layouts in _fpmath.h.

IIRC, long doubles are as follows:
- alpha IEEE double (64-bit) format 
- ia64 IEEE quad (128-bit) format
- i386 IEEE double-extended (80-bit) format
- sparc64 IEEE quad (128-bit) format
- powerpc IEEE quad (128-bit) format

Plus the following quirks:
- alpha doesn't support IEEE rounding by default (compiler options needed)
- i386 and ia64 have a normalization bit in the mantissa
- i386 has 101 other quirks that BDE knows about :)

Best regards,
Mike Barcroft

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-standards" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030217193655.I74149>