diff mbox

[rs6000,testsuite] Skip gfortran.dg/round_4.f90 for PowerPC Linux

Message ID 1404092897.3097.9.camel@gnopaine
State New
Headers show

Commit Message

Bill Schmidt June 30, 2014, 1:48 a.m. UTC
Hi,

The test in gfortran.dg/round_4.f90, introduced in GCC 4.9, checks for
correct behavior of different rounding modes.  However, for
quad-precision floating-point, it requires that the number
0.10000000000000000000000000000000000481 be exactly represented.  Since
the PowerPC long double implementation (double-double) only guarantees
31 bits of precision, the test fails for the real(qp) portions of the
test.  Thus this patch marks the test invalid for PowerPC Linux for now.
(We may want to also do this for other subtargets; let me know if so.)

At such time as IEEE 128-bit floating-point is supported by the PowerPC
port, we should revisit this.

Is this ok for trunk and 4.9?

Thanks,
Bill


2014-06-29  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gfortran.dg/round_4.f90: Skip for powerpc*-*-linux* since the
	test requires greater precision than the current PowerPC long
	double implementation supports.

Comments

David Edelsohn June 30, 2014, 3:28 p.m. UTC | #1
On Sun, Jun 29, 2014 at 9:48 PM, Bill Schmidt
<wschmidt@linux.vnet.ibm.com> wrote:
> Hi,
>
> The test in gfortran.dg/round_4.f90, introduced in GCC 4.9, checks for
> correct behavior of different rounding modes.  However, for
> quad-precision floating-point, it requires that the number
> 0.10000000000000000000000000000000000481 be exactly represented.  Since
> the PowerPC long double implementation (double-double) only guarantees
> 31 bits of precision, the test fails for the real(qp) portions of the
> test.  Thus this patch marks the test invalid for PowerPC Linux for now.
> (We may want to also do this for other subtargets; let me know if so.)
>
> At such time as IEEE 128-bit floating-point is supported by the PowerPC
> port, we should revisit this.
>
> Is this ok for trunk and 4.9?
>
> Thanks,
> Bill
>
>
> 2014-06-29  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
>
>         * gfortran.dg/round_4.f90: Skip for powerpc*-*-linux* since the
>         test requires greater precision than the current PowerPC long
>         double implementation supports.

Okay.

I wonder if this is passing on AIX because AIX defaults to double?

Thanks, David
Mike Stump June 30, 2014, 4:15 p.m. UTC | #2
On Jun 29, 2014, at 6:48 PM, Bill Schmidt <wschmidt@linux.vnet.ibm.com> wrote:
> +! { dg-skip-if "IBM long double 31 bits of precision, test requires 38" { powerpc*-*-linux* } }

Thanks for the comment.  Can someone confirm that this fails on darwin and should be skipped there as well?
diff mbox

Patch

Index: gcc/testsuite/gfortran.dg/round_4.f90
===================================================================
--- gcc/testsuite/gfortran.dg/round_4.f90	(revision 212074)
+++ gcc/testsuite/gfortran.dg/round_4.f90	(working copy)
@@ -1,6 +1,7 @@ 
 ! { dg-do run }
 ! { dg-add-options ieee }
 ! { dg-skip-if "PR libfortran/58015" { hppa*-*-hpux* } }
+! { dg-skip-if "IBM long double 31 bits of precision, test requires 38" { powerpc*-*-linux* } }
 !
 ! PR fortran/35862
 !