Properly align parameters on stack for x86.
commit519b62acd8ceb95c762dc128bb2b2fac7805cdd6
authorhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 26 Oct 2010 13:56:42 +0000 (26 13:56 +0000)
committerhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 26 Oct 2010 13:56:42 +0000 (26 13:56 +0000)
tree2c78afba269a3dd635960b56f043f279eb00af53
parentced8653a8fddea19422fb5ce377de3f91bc2bd05
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165965 138bc75d-0d04-0410-961f-82ee72b054a4
34 files changed:
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/abi/param2.C
gcc/testsuite/g++.dg/vect/pr33860a.cc
gcc/testsuite/gcc.c-torture/compile/20070522-1.c
gcc/testsuite/gcc.c-torture/compile/pr33617.c
gcc/testsuite/gcc.c-torture/execute/pr38151.x [new file with mode: 0644]
gcc/testsuite/gcc.dg/compat/struct-align-1_x.c
gcc/testsuite/gcc.dg/compat/struct-align-1_y.c
gcc/testsuite/gcc.dg/compat/struct-align-2_x.c
gcc/testsuite/gcc.dg/compat/struct-align-2_y.c
gcc/testsuite/gcc.dg/compat/vector-1_x.c
gcc/testsuite/gcc.dg/compat/vector-1_y.c
gcc/testsuite/gcc.dg/compat/vector-1a_x.c
gcc/testsuite/gcc.dg/compat/vector-1a_y.c
gcc/testsuite/gcc.dg/compat/vector-1b_x.c
gcc/testsuite/gcc.dg/compat/vector-1b_y.c
gcc/testsuite/gcc.dg/compat/vector-2_x.c
gcc/testsuite/gcc.dg/compat/vector-2_y.c
gcc/testsuite/gcc.dg/compat/vector-2a_x.c
gcc/testsuite/gcc.dg/compat/vector-2a_y.c
gcc/testsuite/gcc.dg/compat/vector-2b_x.c
gcc/testsuite/gcc.dg/compat/vector-2b_y.c
gcc/testsuite/gcc.dg/pr35442.c
gcc/testsuite/gcc.dg/pr43300.c
gcc/testsuite/gcc.dg/pr44136.c
gcc/testsuite/gcc.target/i386/pr39162.c
gcc/testsuite/gcc.target/i386/pr40906-2.c
gcc/testsuite/gcc.target/i386/pr44948-1a.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr44948-1b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr44948-2a.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr44948-2b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/sse-5.c