diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2011-07-22 16:04:02 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2011-07-22 09:04:02 -0700 |
commit | 3de69514c3f04c875510f9e3fbc2aeeccf80087c (patch) | |
tree | 84442df1d2fb6496750b81ecaf17b6160c110a8f /gcc/config | |
parent | 49f6f4f7e8aa947b360cd4e4574fc1becd494ce9 (diff) | |
download | gcc-3de69514c3f04c875510f9e3fbc2aeeccf80087c.zip gcc-3de69514c3f04c875510f9e3fbc2aeeccf80087c.tar.gz gcc-3de69514c3f04c875510f9e3fbc2aeeccf80087c.tar.bz2 |
Disallow MS ABI in x32 mode.
gcc/
2011-07-22 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_option_override_internal): Disallow
MS ABI in x32 mode.
(ix86_init_builtins): Call ix86_init_builtins_va_builtins_abi
only for TARGET_LP64.
(ix86_handle_abi_attribute): Check TARGET_LP64 instead of
TARGET_64BIT.
gcc/testsuite/
2011-07-22 H.J. Lu <hongjiu.lu@intel.com>
* gcc/testsuite/gcc.target/i386/avx-vzeroupper-16.c: Only run
on lp64 targets.
* gcc/testsuite/gcc.target/i386/avx-vzeroupper-17.c: Likewise.
* gcc/testsuite/gcc.target/i386/avx-vzeroupper-18.c: Likewise.
* gcc/testsuite/gcc.target/i386/pr43662.c: Likewise.
* gcc/testsuite/gcc.target/i386/pr43869.c: Likewise.
* gcc.target/x86_64/abi/callabi/callabi.exp: Check ilp32
instead of ia32.
From-SVN: r176634
Diffstat (limited to 'gcc/config')
-rw-r--r-- | gcc/config/i386/i386.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 6517064..96263ed 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -3133,6 +3133,9 @@ ix86_option_override_internal (bool main_args_p) if (!global_options_set.x_ix86_abi) ix86_abi = DEFAULT_ABI; + if (ix86_abi == MS_ABI && TARGET_X32) + error ("MS ABI not supported in x32 mode"); + if (global_options_set.x_ix86_cmodel) { switch (ix86_cmodel) @@ -25493,7 +25496,7 @@ ix86_init_builtins (void) ix86_init_mmx_sse_builtins (); - if (TARGET_64BIT) + if (TARGET_LP64) ix86_init_builtins_va_builtins_abi (); #ifdef SUBTARGET_INIT_BUILTINS @@ -29313,7 +29316,7 @@ ix86_handle_abi_attribute (tree *node, tree name, *no_add_attrs = true; return NULL_TREE; } - if (!TARGET_64BIT) + if (!TARGET_LP64) { warning (OPT_Wattributes, "%qE attribute only available for 64-bit", name); |