This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Mark various libm tests with xfail-rounding:ldbl-128ibm
- From: Adhemerval Zanella <azanella at linux dot vnet dot ibm dot com>
- To: "Joseph S. Myers" <joseph at codesourcery dot com>, libc-alpha at sourceware dot org
- Date: Fri, 03 Jan 2014 15:20:13 -0200
- Subject: Re: Mark various libm tests with xfail-rounding:ldbl-128ibm
- Authentication-results: sourceware.org; auth=none
- References: <Pine dot LNX dot 4 dot 64 dot 1401031710340 dot 6742 at digraph dot polyomino dot org dot uk>
On 03-01-2014 15:12, Joseph S. Myers wrote:
> This patch marks various libm tests with xfail-rounding:ldbl-128ibm,
> where the failures appear to relate to GCC bug 59666 (bad libgcc
> handling of directed rounding), so as to allow clean libm-test-ulps
> regeneration without needing to edit out large ulps for various
> functions manually.
>
> Note that this only deals with the cases problematic for ulps
> regeneration. There are plenty of test failures left that do not
> affect ulps regeneration - results that are infinities or NaNs but
> should be finite, or vice versa, and missing and spurious exceptions -
> which should also be resolved during the release testing period.
>
> Tested for powerpc32 (hard float) and committed. Adhemerval, you may
> wish to do a from-scratch regeneration of the hard-float ulps
> (truncate libm-test-ulps and make regen-ulps, using a GCC version
> including my recent fix for glibc bug 15396), or may wish to leave
> that until more of the other bugs causing test failures are resolved
> (whether through fixing or xfailing). I plan to do an initial
> regeneration of the nofpu libm-test-ulps and then subsequent
> regenerations as appropriate after any further bug fixing.
Thanks for working on this Joseph. Are you working or planning to work
on more ldbl-128ibm fixes for 2.19? If not I'll regenerate the hard-fp
ulps files.
>
> (auto-libm-test-out diffs omitted below.)
>
> 2014-01-03 Joseph Myers <joseph@codesourcery.com>
>
> * math/auto-libm-test-in: Mark various tests with
> xfail-rounding:ldbl-128ibm.
> * math/auto-libm-test-out: Regenerated.
>
> diff --git a/math/auto-libm-test-in b/math/auto-libm-test-in
> index c09089b..cc28905 100644
> --- a/math/auto-libm-test-in
> +++ b/math/auto-libm-test-in
> @@ -503,8 +503,9 @@ cosh 0x1p-5
> cosh 0x1p-20
> cosh -1
> cosh 50
> -cosh max no-test-inline
> -cosh -max no-test-inline
> +# GCC bug 59666: results on directed rounding may be incorrect.
> +cosh max no-test-inline xfail-rounding:ldbl-128ibm
> +cosh -max no-test-inline xfail-rounding:ldbl-128ibm
> # Bug 16354: spurious underflow may occur.
> cosh min spurious-underflow
> cosh -min spurious-underflow
> @@ -515,22 +516,23 @@ cosh 0x5.96a7ep+4
> cosh 0x5.96a7e8p+4
> cosh -0x5.96a7ep+4
> cosh -0x5.96a7e8p+4
> -cosh 0x2.c679d1f73f0fap+8
> -cosh 0x2.c679d1f73f0fcp+8
> -cosh -0x2.c679d1f73f0fap+8
> -cosh -0x2.c679d1f73f0fcp+8
> -cosh 0x2.c679d1f73f0fb624d358b213a7p+8
> -cosh 0x2.c679d1f73f0fb624d358b213a8p+8
> -cosh -0x2.c679d1f73f0fb624d358b213a7p+8
> -cosh -0x2.c679d1f73f0fb624d358b213a8p+8
> -cosh 0x2.c5d37700c6bb03a4p+12 no-test-inline
> -cosh 0x2.c5d37700c6bb03a8p+12 no-test-inline
> -cosh -0x2.c5d37700c6bb03a4p+12 no-test-inline
> -cosh -0x2.c5d37700c6bb03a8p+12 no-test-inline
> -cosh 0x2.c5d37700c6bb03a6c24b6c9b494cp+12 no-test-inline
> -cosh 0x2.c5d37700c6bb03a6c24b6c9b494ep+12 no-test-inline
> -cosh -0x2.c5d37700c6bb03a6c24b6c9b494cp+12 no-test-inline
> -cosh -0x2.c5d37700c6bb03a6c24b6c9b494ep+12 no-test-inline
> +# GCC bug 59666: results on directed rounding may be incorrect.
> +cosh 0x2.c679d1f73f0fap+8 xfail-rounding:ldbl-128ibm
> +cosh 0x2.c679d1f73f0fcp+8 xfail-rounding:ldbl-128ibm
> +cosh -0x2.c679d1f73f0fap+8 xfail-rounding:ldbl-128ibm
> +cosh -0x2.c679d1f73f0fcp+8 xfail-rounding:ldbl-128ibm
> +cosh 0x2.c679d1f73f0fb624d358b213a7p+8 xfail-rounding:ldbl-128ibm
> +cosh 0x2.c679d1f73f0fb624d358b213a8p+8 xfail-rounding:ldbl-128ibm
> +cosh -0x2.c679d1f73f0fb624d358b213a7p+8 xfail-rounding:ldbl-128ibm
> +cosh -0x2.c679d1f73f0fb624d358b213a8p+8 xfail-rounding:ldbl-128ibm
> +cosh 0x2.c5d37700c6bb03a4p+12 no-test-inline xfail-rounding:ldbl-128ibm
> +cosh 0x2.c5d37700c6bb03a8p+12 no-test-inline xfail-rounding:ldbl-128ibm
> +cosh -0x2.c5d37700c6bb03a4p+12 no-test-inline xfail-rounding:ldbl-128ibm
> +cosh -0x2.c5d37700c6bb03a8p+12 no-test-inline xfail-rounding:ldbl-128ibm
> +cosh 0x2.c5d37700c6bb03a6c24b6c9b494cp+12 no-test-inline xfail-rounding:ldbl-128ibm
> +cosh 0x2.c5d37700c6bb03a6c24b6c9b494ep+12 no-test-inline xfail-rounding:ldbl-128ibm
> +cosh -0x2.c5d37700c6bb03a6c24b6c9b494cp+12 no-test-inline xfail-rounding:ldbl-128ibm
> +cosh -0x2.c5d37700c6bb03a6c24b6c9b494ep+12 no-test-inline xfail-rounding:ldbl-128ibm
>
> cpow 1 0 0 0
> cpow 2 0 10 0
> @@ -727,21 +729,26 @@ exp10 -36
> exp10 305
> exp10 -305
> # Bug 16284: results on directed rounding may be incorrect.
> -exp10 4932 xfail-rounding:flt-32
> +# GCC bug 59666: results on directed rounding may be incorrect.
> +exp10 4932 xfail-rounding:flt-32 xfail-rounding:ldbl-128ibm
> # Bug 16361: underflow exception may be misssing
> exp10 -4932 missing-underflow:ldbl-96-intel:x86 missing-underflow:ldbl-96-intel:x86_64
> # Bug 16284: results on directed rounding may be incorrect.
> -exp10 1e5 xfail-rounding:flt-32
> +# GCC bug 59666: results on directed rounding may be incorrect.
> +exp10 1e5 xfail-rounding:flt-32 xfail-rounding:ldbl-128ibm
> exp10 -1e5
> # Bug 16284: results on directed rounding may be incorrect.
> -exp10 1e6 xfail-rounding:flt-32
> +# GCC bug 59666: results on directed rounding may be incorrect.
> +exp10 1e6 xfail-rounding:flt-32 xfail-rounding:ldbl-128ibm
> exp10 -1e6
> # Bug 16284: results on directed rounding may be incorrect.
> -exp10 max xfail-rounding:flt-32
> +# GCC bug 59666: results on directed rounding may be incorrect.
> +exp10 max xfail-rounding:flt-32 xfail-rounding:ldbl-128ibm
> exp10 -max
> exp10 0.75
> # Bug 16284: results on directed rounding may be incorrect.
> -exp10 0x1.348e45573a1dd72cp+8 xfail-rounding:flt-32 xfail-rounding:dbl-64
> +# GCC bug 59666: results on directed rounding may be incorrect.
> +exp10 0x1.348e45573a1dd72cp+8 xfail-rounding:flt-32 xfail-rounding:dbl-64 xfail-rounding:ldbl-128ibm
>
> exp2 0
> exp2 -0
> @@ -768,7 +775,8 @@ expm1 0.75
> expm1 50.0
> expm1 127.0
> expm1 500.0
> -expm1 11356.25
> +# GCC bug 59666: results on directed rounding may be incorrect.
> +expm1 11356.25 xfail-rounding:ldbl-128ibm
> expm1 -10.0
> expm1 -16.0
> expm1 -17.0
> @@ -789,8 +797,9 @@ expm1 -100.0
> expm1 -1000.0
> expm1 -10000.0
> expm1 -100000.0
> -expm1 100000.0
> -expm1 max
> +# GCC bug 59666: results on directed rounding may be incorrect.
> +expm1 100000.0 xfail-rounding:ldbl-128ibm
> +expm1 max xfail-rounding:ldbl-128ibm
> expm1 -max
> expm1 0x1p-2
> expm1 -0x1p-2
>