[PATCH] x86-64 gcc.dg testsuite fixes
Jakub Jelinek
jakub@redhat.com
Fri Apr 2 20:37:00 GMT 2004
Hi!
-march=pentium3 on x86_64 results in
i386-sse-8.c:0: error: CPU you selected does not support x86-64 instruction set
error.
x86_64 calling convention passes first argument in %rdi, so expect the
argument there, not in %eax (where it is supposed to be on i?86 because of
the regparm calling convention for local function).
Lastly, labels for -fasynchronous-unwind-tables which is the default on
x86_64 are .LCFI[0-9]*, so we need to avoid them.
Ok to commit?
For 3.4 too (or 3.4.1)?
2004-04-02 Jakub Jelinek <jakub@redhat.com>
* gcc.dg/i386-sse-8.c: Don't use -march=pentium3 on x86_64.
* gcc.dg/i386-local.c: Expect %edi, not %eax register on x86_64.
* gcc.dg/20020103-1.c: Add -fno-asynchronous-unwind-tables to
options.
--- gcc/testsuite/gcc.dg/i386-sse-8.c.jj 2004-03-22 16:25:04.000000000 +0100
+++ gcc/testsuite/gcc.dg/i386-sse-8.c 2004-04-02 22:31:08.248716798 +0200
@@ -3,7 +3,7 @@
/* { dg-do compile } */
/* { dg-options "" } */
-/* { dg-options "-march=pentium3" { target i?86-*-* x86_64-*-* } } */
+/* { dg-options "-march=pentium3" { target i?86-*-* } } */
int main()
{
--- gcc/testsuite/gcc.dg/i386-local.c.jj 2003-06-10 15:49:04.000000000 +0200
+++ gcc/testsuite/gcc.dg/i386-local.c 2004-04-02 22:30:21.539087772 +0200
@@ -1,6 +1,7 @@
/* { dg-do compile { target i?86-*-* x86_64-*-* } } */
/* { dg-options "-O2 -funit-at-a-time" } */
-/* { dg-final { scan-assembler "magic\[^\\n\]*eax" } } */
+/* { dg-final { scan-assembler "magic\[^\\n\]*eax" { target i?86-*-* } } } */
+/* { dg-final { scan-assembler "magic\[^\\n\]*edi" { target x86_64-*-* } } } */
/* Verify that local calling convention is used. */
static t(int) __attribute__ ((noinline));
--- gcc/testsuite/gcc.dg/20020103-1.c.jj 2002-10-02 16:48:53.000000000 +0200
+++ gcc/testsuite/gcc.dg/20020103-1.c 2004-04-02 22:30:21.559084188 +0200
@@ -1,7 +1,7 @@
/* Verify that constant equivalences get reloaded properly, either by being
spilled to the stack, or regenerated, but not dropped to memory. */
/* { dg-do compile { target i?86-*-* powerpc-*-* rs6000-*-* alpha*-*-* x86_64-*-*} } */
-/* { dg-options "-O2 -fpic -fno-omit-frame-pointer" } */
+/* { dg-options "-O2 -fpic -fno-omit-frame-pointer -fno-asynchronous-unwind-tables" } */
/* { dg-final { scan-assembler-not "LC" } } */
/* Clobber all call-saved registers that can hold a pointer value. */
Jakub
More information about the Gcc-patches
mailing list