This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Update sparc ULPs.
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: Andreas Schwab <schwab at linux-m68k dot org>
- Cc: David Miller <davem at davemloft dot net>, <libc-alpha at sourceware dot org>
- Date: Fri, 16 Nov 2012 16:55:20 +0000
- Subject: Re: [PATCH] Update sparc ULPs.
- References: <Pine.LNX.4.64.1209241254140.23802@digraph.polyomino.org.uk><20120924.135523.2105566314867619791.davem@davemloft.net><Pine.LNX.4.64.1209241940230.31396@digraph.polyomino.org.uk><20121116.012126.1183281920754085320.davem@davemloft.net> <m2mwyhvjaz.fsf@igel.home>
On Fri, 16 Nov 2012, Andreas Schwab wrote:
> David Miller <davem@davemloft.net> writes:
>
> > What I really don't understand is why ldbl-128ibm's variant of this
> > code doesn't trigger this same problem on powerpc testsuite runs.
> > Either it is happening (and therefore ldbl-128ibm/s_log1pl.c needs a
> > similar change to this) or powerpc isn't generating the exceptions.
>
> IBM long double cannot represent 0x1p-8189L, so this test is skipped.
> ppc is also seeing spurious underflows:
>
> Failure: Real part of: clog10 (0x1.00000000000000123456789abcp0 + 0x1.23456789p-1000 i) == 4.285899851347756186652871946325962330640e-19 + 4.611541215247321502041995872887317363241e-302 i: Exception "Underflow" set
> Failure: Real part of: clog10 (0x0.fffffffffffff8p0 + 0x0.fffffffffffff8p-1000 i) == -4.821637332766435821255375046554377090472e-17 + 4.053112396770095089737411317782466262176e-302 i: Exception "Underflow" set
>
> But here it is generated in atan2.
Actually, those aren't spurious, since the imaginary parts of the results
are (inexact and) below 2.00416836000897277799610805135016e-292L which is
LDBL_MIN for ldbl-128ibm. Those two tests, and the corresponding two for
clog, should be using UNDERFLOW_EXCEPTION_LDOUBLE_IBM to indicate that
such exceptions are expected in this case.
--
Joseph S. Myers
joseph@codesourcery.com