This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Update sparc ULPs.


From: Andreas Schwab <schwab@linux-m68k.org>
Date: Fri, 16 Nov 2012 13:11:48 +0100

> 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.

Yes, even after my fix I get one of those underflow exceptions on
sparc as well as a few others.  My current failure list is:

testing long double (without inline functions)
Failure: pow (min_subnorm_value, min_subnorm_value) == 1.0: Exception "Underflow" set
Failure: pow (min_subnorm_value, -min_subnorm_value) == 1.0: Exception "Underflow" set
Failure: pow (max_value, min_subnorm_value) == 1.0: Exception "Underflow" set
Failure: pow (max_value, -min_subnorm_value) == 1.0: Exception "Underflow" set
Failure: pow (0.99, min_subnorm_value) == 1.0: Exception "Underflow" set
Failure: pow (0.99, -min_subnorm_value) == 1.0: Exception "Underflow" set
Failure: pow (1.01, min_subnorm_value) == 1.0: Exception "Underflow" set
Failure: pow (1.01, -min_subnorm_value) == 1.0: Exception "Underflow" set
Failure: Real part of: clog10 (0x0.ffffffffffffffffp0 + 0x0.ffffffffffffffffp-15000 i) == -2.354315103889861110220423157644627849164e-20 + 1.541165759405643564697852372112893034397e-4516 i: Exception "Underflow" set
Failure: Real part of: clog (0x0.ffffffffffffffffp0 + 0x0.ffffffffffffffffp-15000 i) == -5.421010862427522170184200798202494495630e-20 + 3.548665303440282824232502561095699343814e-4516 i: Exception "Underflow" set
Failure: yn (10, min_value) == -inf: Exception "Underflow" set
Failure: yn (10, min_value) == -inf: Exception "Underflow" set

Test suite completed:
  6630 test cases plus 5626 tests for exception flags executed.
  12 errors occurred.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]