i386.opt (-mstackrealign): New flag.
authorStuart Hastings <stuart@apple.com>
Thu, 18 May 2006 00:34:44 +0000 (00:34 +0000)
committerStuart Hastings <stuart@gcc.gnu.org>
Thu, 18 May 2006 00:34:44 +0000 (00:34 +0000)
commit339329463663199b22e18901d101b680979c980e
tree76255841987be3306d958753a8feba9aea4e6b6e
parent71abbf1620f10d59cd6afcbf56b47f2f488ff1bf
i386.opt (-mstackrealign): New flag.

        * gcc/config/i386/i386.opt (-mstackrealign): New flag.  *
gcc/config/i386/i386.c (force_align_arg_pointer): New attribute.
(ix86_handle_cconv_attribute): Emit error when
force_align_arg_pointer attribute collides with too many regparms.
(ix86_function_regparm): Limit regparms when used with
force_align_arg_pointer attribute.  (ix86_internal_arg_pointer):
Support stack-realigning prologue in non-main functions.  Emit
warning for nested functions under -mstackrealign, emit error for
nested functions with force_align_arg_pointer attribute.
* gcc/doc/extend.texi (force_align_arg_pointer): Document it.
* gcc/doc/invoke.texi (-mstackrealign): Document it.
* testsuite/gcc.target/i386/20060512-1.c: New.
* testsuite/gcc.target/i386/20060512-2.c: New.
* testsuite/gcc.target/i386/20060512-3.c: New.
* testsuite/gcc.target/i386/20060512-4.c: New.

From-SVN: r113880
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/i386.opt
gcc/doc/extend.texi
gcc/doc/invoke.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/20060512-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/20060512-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/20060512-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/20060512-4.c [new file with mode: 0644]