This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[testsuite] Require -march=i[45]86 on several tests
- From: Rainer Orth <ro at CeBiTec dot Uni-Bielefeld dot DE>
- To: gcc-patches at gcc dot gnu dot org
- Date: Mon, 07 Jun 2010 19:58:01 +0200
- Subject: [testsuite] Require -march=i[45]86 on several tests
When I switched the Solaris 2/x86 port from i386 to pentium4 for GCC
4.5, I noticed that several tests suddenly started passing. Further
investigation revealed that they seem to need -march=i486 or i586 at
least. The following patch makes sure the necessary option is passed
for i?86-*-* targets, but only with ilp32 to make sure not to interfere
with bi-arch targets like Solaris 10+/x86.
Tested with manual runtest invocations: they fail with --target_board
'unix{-march=i386}' and pass without.
Ok for mainline, 4.4 and 4.5 branches?
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
2010-06-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* gcc.dg/tree-ssa/ltrans-1.c: Add -march=i486 for i?86-*-* && ilp32.
* gcc.dg/tree-ssa/ltrans-3.c: Likewise.
* gcc.dg/tree-ssa/ltrans-4.c: Likewise.
* gcc.dg/tree-ssa/ltrans-5.c: Likewise.
* gcc.dg/tree-ssa/ltrans-6.c: Likewise.
* gcc.dg/tree-ssa/ltrans-8.c: Likewise.
* gcc.dg/tree-ssa/vrp47.c: Add -march=i586 for i?86-*-* && ilp32.
* gfortran.dg/ltrans-7.f90: Add -march=i486 for i?86-*-* && ilp32.
diff -r f01280e81de7 gcc/testsuite/gcc.dg/tree-ssa/ltrans-1.c
--- a/gcc/testsuite/gcc.dg/tree-ssa/ltrans-1.c Thu Jun 03 20:43:53 2010 +0200
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ltrans-1.c Sun Jun 06 21:56:52 2010 +0200
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
+/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
/* { dg-require-effective-target size32plus } */
double u[1782225];
diff -r f01280e81de7 gcc/testsuite/gcc.dg/tree-ssa/ltrans-3.c
--- a/gcc/testsuite/gcc.dg/tree-ssa/ltrans-3.c Thu Jun 03 20:43:53 2010 +0200
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ltrans-3.c Sun Jun 06 21:56:52 2010 +0200
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
+/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
/* { dg-require-effective-target size32plus } */
double u[1782225];
diff -r f01280e81de7 gcc/testsuite/gcc.dg/tree-ssa/ltrans-4.c
--- a/gcc/testsuite/gcc.dg/tree-ssa/ltrans-4.c Thu Jun 03 20:43:53 2010 +0200
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ltrans-4.c Sun Jun 06 21:56:52 2010 +0200
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
+/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
/* { dg-require-effective-target size32plus } */
double u[1782225];
diff -r f01280e81de7 gcc/testsuite/gcc.dg/tree-ssa/ltrans-5.c
--- a/gcc/testsuite/gcc.dg/tree-ssa/ltrans-5.c Thu Jun 03 20:43:53 2010 +0200
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ltrans-5.c Sun Jun 06 21:56:52 2010 +0200
@@ -1,5 +1,6 @@
/* { dg-do compile { target { size32plus } } } */
/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
+/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
int foo ()
{
diff -r f01280e81de7 gcc/testsuite/gcc.dg/tree-ssa/ltrans-6.c
--- a/gcc/testsuite/gcc.dg/tree-ssa/ltrans-6.c Thu Jun 03 20:43:53 2010 +0200
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ltrans-6.c Sun Jun 06 21:56:52 2010 +0200
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
+/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
/* { dg-require-effective-target size32plus } */
diff -r f01280e81de7 gcc/testsuite/gcc.dg/tree-ssa/ltrans-8.c
--- a/gcc/testsuite/gcc.dg/tree-ssa/ltrans-8.c Thu Jun 03 20:43:53 2010 +0200
+++ b/gcc/testsuite/gcc.dg/tree-ssa/ltrans-8.c Sun Jun 06 21:56:52 2010 +0200
@@ -1,5 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" } */
+/* { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32} } } */
double foo(double *a)
{
int i,j;
diff -r f01280e81de7 gcc/testsuite/gcc.dg/tree-ssa/vrp47.c
--- a/gcc/testsuite/gcc.dg/tree-ssa/vrp47.c Thu Jun 03 20:43:53 2010 +0200
+++ b/gcc/testsuite/gcc.dg/tree-ssa/vrp47.c Sun Jun 06 21:56:52 2010 +0200
@@ -5,6 +5,7 @@
this. */
/* { dg-do compile { target { ! "mips*-*-* s390*-*-* avr-*-*" } } } */
/* { dg-options "-O2 -fdump-tree-vrp -fdump-tree-dom" } */
+/* { dg-options "-O2 -fdump-tree-vrp -fdump-tree-dom -march=i586" { target { i?86-*-* && ilp32 } } } */
int h(int x, int y)
{
diff -r f01280e81de7 gcc/testsuite/gfortran.dg/ltrans-7.f90
--- a/gcc/testsuite/gfortran.dg/ltrans-7.f90 Thu Jun 03 20:43:53 2010 +0200
+++ b/gcc/testsuite/gfortran.dg/ltrans-7.f90 Sun Jun 06 21:56:52 2010 +0200
@@ -1,5 +1,6 @@
! { dg-do compile }
! { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all" }
+! { dg-options "-O2 -ftree-loop-linear -fdump-tree-ltrans-all -march=i486" { target { i?86-*-* && ilp32 } } }
Program FOO
IMPLICIT INTEGER (I-N)