diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2010-10-26 13:56:42 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2010-10-26 06:56:42 -0700 |
commit | f28e93a8a563dc2202264ffef34e129e8ce5eeef (patch) | |
tree | 2c78afba269a3dd635960b56f043f279eb00af53 /gcc/testsuite/gcc.dg | |
parent | 76d8a30aaf0a266709be00a9e01148e60d803f1e (diff) | |
download | gcc-f28e93a8a563dc2202264ffef34e129e8ce5eeef.zip gcc-f28e93a8a563dc2202264ffef34e129e8ce5eeef.tar.gz gcc-f28e93a8a563dc2202264ffef34e129e8ce5eeef.tar.bz2 |
Properly align parameters on stack for x86.
gcc/
2010-10-26 H.J. Lu <hongjiu.lu@intel.com>
PR target/44948
* config/i386/i386.c (ix86_old_function_arg_boundary): New.
(ix86_function_arg_boundary): Always align parameters on stack
in 64bit and align parameters with alignment >= 16byte on stack
in 32bit. Warn alignment change.
gcc/testsuite/
2010-10-26 H.J. Lu <hongjiu.lu@intel.com>
PR target/44948
* g++.dg/abi/param2.C: Add -Wno-psabi for ilp32 x86.
* g++.dg/vect/pr33860a.cc: Likewise.
* gcc.c-torture/compile/20070522-1.c: Likewise.
* gcc.dg/compat/struct-align-1_x.c: Likewise.
* gcc.dg/compat/struct-align-1_y.c: Likewise.
* gcc.dg/compat/struct-align-2_x.c: Likewise.
* gcc.dg/compat/struct-align-2_y.c: Likewise.
* gcc.dg/pr44136.c: Likewise.
* gcc.c-torture/compile/pr33617.c: Add -Wno-psabi for x86.
* gcc.dg/compat/vector-1_x.c: Likewise.
* gcc.dg/compat/vector-1_y.c: Likewise.
* gcc.dg/compat/vector-2_x.c: Likewise.
* gcc.dg/compat/vector-2_y.c: Likewise.
* gcc.dg/pr43300.c: Likewise.
* gcc.dg/compat/vector-1a_x.c: Add -Wno-psabi.
* gcc.dg/compat/vector-1a_y.c: Likewise.
* gcc.dg/compat/vector-1b_x.c: Likewise.
* gcc.dg/compat/vector-1b_y.c: Likewise.
* gcc.dg/compat/vector-2a_x.c: Likewise.
* gcc.dg/compat/vector-2a_y.c: Likewise.
* gcc.dg/compat/vector-2b_x.c: Likewise.
* gcc.dg/compat/vector-2b_y.c: Likewise.
* gcc.target/i386/pr39162.c: Likewise.
* gcc.target/i386/pr40906-2.c: Likewise.
* gcc.target/i386/sse-5.c: Likewise.
* gcc.dg/pr35442.c: Prune ABI change warnings.
* gcc.c-torture/execute/pr38151.x: New.
* gcc.target/i386/pr44948-1a.c: Likewise.
* gcc.target/i386/pr44948-1b.c: Likewise.
* gcc.target/i386/pr44948-2a.c: Likewise.
* gcc.target/i386/pr44948-2b.c: Likewise.
From-SVN: r165965
Diffstat (limited to 'gcc/testsuite/gcc.dg')
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/struct-align-1_x.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/struct-align-1_y.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/struct-align-2_x.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/struct-align-2_y.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-1_x.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-1_y.c | 1 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-1a_x.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-1a_y.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-1b_x.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-1b_y.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-2_x.c | 3 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-2_y.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-2a_x.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-2a_y.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-2b_x.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/compat/vector-2b_y.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr35442.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr43300.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr44136.c | 2 |
19 files changed, 25 insertions, 12 deletions
diff --git a/gcc/testsuite/gcc.dg/compat/struct-align-1_x.c b/gcc/testsuite/gcc.dg/compat/struct-align-1_x.c index 51b2ef4..939db9d 100644 --- a/gcc/testsuite/gcc.dg/compat/struct-align-1_x.c +++ b/gcc/testsuite/gcc.dg/compat/struct-align-1_x.c @@ -1,3 +1,5 @@ +/* { dg-options "-Wno-psabi" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */ + #include "compat-common.h" #include "struct-align-1.h" diff --git a/gcc/testsuite/gcc.dg/compat/struct-align-1_y.c b/gcc/testsuite/gcc.dg/compat/struct-align-1_y.c index c858e10..77cb098 100644 --- a/gcc/testsuite/gcc.dg/compat/struct-align-1_y.c +++ b/gcc/testsuite/gcc.dg/compat/struct-align-1_y.c @@ -1,3 +1,5 @@ +/* { dg-options "-Wno-psabi" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */ + #include "compat-common.h" #include "struct-align-1.h" diff --git a/gcc/testsuite/gcc.dg/compat/struct-align-2_x.c b/gcc/testsuite/gcc.dg/compat/struct-align-2_x.c index 2a4ae586..6bfc222 100644 --- a/gcc/testsuite/gcc.dg/compat/struct-align-2_x.c +++ b/gcc/testsuite/gcc.dg/compat/struct-align-2_x.c @@ -1,3 +1,5 @@ +/* { dg-options "-Wno-psabi" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */ + /* Disable this test for 16-bit targets. */ #include <limits.h> diff --git a/gcc/testsuite/gcc.dg/compat/struct-align-2_y.c b/gcc/testsuite/gcc.dg/compat/struct-align-2_y.c index 0ca2e40..2727015 100644 --- a/gcc/testsuite/gcc.dg/compat/struct-align-2_y.c +++ b/gcc/testsuite/gcc.dg/compat/struct-align-2_y.c @@ -1,3 +1,5 @@ +/* { dg-options "-Wno-psabi" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */ + /* Disable this test for 16-bit targets. */ #include <limits.h> diff --git a/gcc/testsuite/gcc.dg/compat/vector-1_x.c b/gcc/testsuite/gcc.dg/compat/vector-1_x.c index ab4f88b..29a8170 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-1_x.c +++ b/gcc/testsuite/gcc.dg/compat/vector-1_x.c @@ -1,4 +1,5 @@ /* { dg-options "-w" } */ +/* { dg-options "-w -Wno-psabi" { target { i?86-*-* x86_64-*-* } } } */ #ifndef SKIP_ATTRIBUTE diff --git a/gcc/testsuite/gcc.dg/compat/vector-1_y.c b/gcc/testsuite/gcc.dg/compat/vector-1_y.c index 5a09c0e..284b98c 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-1_y.c +++ b/gcc/testsuite/gcc.dg/compat/vector-1_y.c @@ -1,4 +1,5 @@ /* { dg-options "-w" } */ +/* { dg-options "-w -Wno-psabi" { target { i?86-*-* x86_64-*-* } } } */ #ifndef SKIP_ATTRIBUTE diff --git a/gcc/testsuite/gcc.dg/compat/vector-1a_x.c b/gcc/testsuite/gcc.dg/compat/vector-1a_x.c index aa0fa7f..1d39cec 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-1a_x.c +++ b/gcc/testsuite/gcc.dg/compat/vector-1a_x.c @@ -1,3 +1,3 @@ -/* { dg-options "-w -mno-mmx -msse2" } */ +/* { dg-options "-w -Wno-psabi -mno-mmx -msse2" } */ #include "vector-1_x.c" diff --git a/gcc/testsuite/gcc.dg/compat/vector-1a_y.c b/gcc/testsuite/gcc.dg/compat/vector-1a_y.c index 2c88e19..53b1a7f 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-1a_y.c +++ b/gcc/testsuite/gcc.dg/compat/vector-1a_y.c @@ -1,3 +1,3 @@ -/* { dg-options "-w -mno-mmx -msse2" } */ +/* { dg-options "-w -Wno-psabi -mno-mmx -msse2" } */ #include "vector-1_y.c" diff --git a/gcc/testsuite/gcc.dg/compat/vector-1b_x.c b/gcc/testsuite/gcc.dg/compat/vector-1b_x.c index fe2565c..f3f76ec 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-1b_x.c +++ b/gcc/testsuite/gcc.dg/compat/vector-1b_x.c @@ -1,3 +1,3 @@ -/* { dg-options "-w -mno-mmx -mavx" } */ +/* { dg-options "-w -Wno-psabi -mno-mmx -mavx" } */ #include "vector-1_x.c" diff --git a/gcc/testsuite/gcc.dg/compat/vector-1b_y.c b/gcc/testsuite/gcc.dg/compat/vector-1b_y.c index 3212bf5..105282c 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-1b_y.c +++ b/gcc/testsuite/gcc.dg/compat/vector-1b_y.c @@ -1,3 +1,3 @@ -/* { dg-options "-w -mno-mmx -mavx" } */ +/* { dg-options "-w -Wno-psabi -mno-mmx -mavx" } */ #include "vector-1_y.c" diff --git a/gcc/testsuite/gcc.dg/compat/vector-2_x.c b/gcc/testsuite/gcc.dg/compat/vector-2_x.c index d08c77f..899a3ab 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-2_x.c +++ b/gcc/testsuite/gcc.dg/compat/vector-2_x.c @@ -1,5 +1,6 @@ /* { dg-options "-w" } */ -/* { dg-options "-w -mno-mmx" { target { i?86-*-* x86_64-*-* } } } */ +/* { dg-options "-w -mno-mmx -Wno-psabi" { target { i?86-*-* x86_64-*-* } } } */ + #ifndef SKIP_ATTRIBUTE diff --git a/gcc/testsuite/gcc.dg/compat/vector-2_y.c b/gcc/testsuite/gcc.dg/compat/vector-2_y.c index fd5830c..a5ab241 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-2_y.c +++ b/gcc/testsuite/gcc.dg/compat/vector-2_y.c @@ -1,5 +1,5 @@ /* { dg-options "-w" } */ -/* { dg-options "-w -mno-mmx" { target { i?86-*-* x86_64-*-* } } } */ +/* { dg-options "-w -mno-mmx -Wno-psabi" { target { i?86-*-* x86_64-*-* } } } */ #ifndef SKIP_ATTRIBUTE diff --git a/gcc/testsuite/gcc.dg/compat/vector-2a_x.c b/gcc/testsuite/gcc.dg/compat/vector-2a_x.c index fcfacec..fb62bb8 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-2a_x.c +++ b/gcc/testsuite/gcc.dg/compat/vector-2a_x.c @@ -1,3 +1,3 @@ -/* { dg-options "-w -mno-mmx -msse2" } */ +/* { dg-options "-w -Wno-psabi -mno-mmx -msse2" } */ #include "vector-2_x.c" diff --git a/gcc/testsuite/gcc.dg/compat/vector-2a_y.c b/gcc/testsuite/gcc.dg/compat/vector-2a_y.c index 3797acb..7cdd195 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-2a_y.c +++ b/gcc/testsuite/gcc.dg/compat/vector-2a_y.c @@ -1,3 +1,3 @@ -/* { dg-options "-w -mno-mmx -msse2" } */ +/* { dg-options "-w -Wno-psabi -mno-mmx -msse2" } */ #include "vector-2_y.c" diff --git a/gcc/testsuite/gcc.dg/compat/vector-2b_x.c b/gcc/testsuite/gcc.dg/compat/vector-2b_x.c index 4dd3436..71b36be 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-2b_x.c +++ b/gcc/testsuite/gcc.dg/compat/vector-2b_x.c @@ -1,3 +1,3 @@ -/* { dg-options "-w -mno-mmx -mavx" } */ +/* { dg-options "-w -Wno-psabi -mno-mmx -mavx" } */ #include "vector-2_x.c" diff --git a/gcc/testsuite/gcc.dg/compat/vector-2b_y.c b/gcc/testsuite/gcc.dg/compat/vector-2b_y.c index 2820e0b..9c114bb 100644 --- a/gcc/testsuite/gcc.dg/compat/vector-2b_y.c +++ b/gcc/testsuite/gcc.dg/compat/vector-2b_y.c @@ -1,3 +1,3 @@ -/* { dg-options "-w -mno-mmx -mavx" } */ +/* { dg-options "-w -Wno-psabi -mno-mmx -mavx" } */ #include "vector-2_y.c" diff --git a/gcc/testsuite/gcc.dg/pr35442.c b/gcc/testsuite/gcc.dg/pr35442.c index 2bf5ce6..875cb0b 100644 --- a/gcc/testsuite/gcc.dg/pr35442.c +++ b/gcc/testsuite/gcc.dg/pr35442.c @@ -11,4 +11,4 @@ foo (A a) } /* Ignore a warning that is irrelevant to the purpose of this test. */ -/* { dg-prune-output ".*GCC vector passed by reference.*" } */ +/* { dg-prune-output "(.*GCC vector passed by reference.*|.*ABI of * passing parameter with.*)" } */ diff --git a/gcc/testsuite/gcc.dg/pr43300.c b/gcc/testsuite/gcc.dg/pr43300.c index df71dbe..a3d66fe 100644 --- a/gcc/testsuite/gcc.dg/pr43300.c +++ b/gcc/testsuite/gcc.dg/pr43300.c @@ -1,5 +1,7 @@ /* { dg-do compile } */ /* { dg-options "-Os -w" } */ +/* { dg-options "-Os -w -Wno-psabi" { target { i?86-*-* x86_64-*-* } } } */ + typedef float V2SF __attribute__ ((vector_size (128))); V2SF diff --git a/gcc/testsuite/gcc.dg/pr44136.c b/gcc/testsuite/gcc.dg/pr44136.c index 71c21ab..e053cf8 100644 --- a/gcc/testsuite/gcc.dg/pr44136.c +++ b/gcc/testsuite/gcc.dg/pr44136.c @@ -1,7 +1,7 @@ /* PR debug/44136 */ /* { dg-do compile } */ /* { dg-options "-w -O2 -g" } */ -/* { dg-options "-w -O2 -g -mno-sse" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */ +/* { dg-options "-w -Wno-psabi -O2 -g -mno-sse" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */ #define vector __attribute((vector_size(16))) vector float a; |