summaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorechristo <echristo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-06-13 22:06:15 +0000
committerechristo <echristo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-06-13 22:06:15 +0000
commit23d5b88f16145d3a563523d3dcf05a74e3a49f45 (patch)
treefd89a9abe73d01a31f7e09264d0af59ecf88ccb5 /gcc/config
parent11e3d02d4dcb2cbbdea83c8a877fbfe2c182fdba (diff)
downloadgcc-23d5b88f16145d3a563523d3dcf05a74e3a49f45.tar.gz
2007-06-13 Eric Christopher <echristo@apple.com>
* config/i386/i386.c (override_options): If we've specified an arch then don't use TARGET_SUBTARGET_ISA_DEFAULTs. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@125685 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/i386/i386.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index ab7c8c43f96..83e1262260f 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -1706,6 +1706,7 @@ override_options (void)
{
int i;
int ix86_tune_defaulted = 0;
+ int ix86_arch_specified = 0;
unsigned int ix86_arch_mask, ix86_tune_mask;
/* Comes from final.c -- no real reason to change it. */
@@ -1953,6 +1954,9 @@ override_options (void)
if (!ix86_arch_string)
ix86_arch_string = TARGET_64BIT ? "x86-64" : "i386";
+ else
+ ix86_arch_specified = 1;
+
if (!strcmp (ix86_arch_string, "generic"))
error ("generic CPU can be used only for -mtune= switch");
if (!strncmp (ix86_arch_string, "generic", 7))
@@ -2230,6 +2234,7 @@ override_options (void)
/* Enable by default the SSE and MMX builtins. Do allow the user to
explicitly disable any of these. In particular, disabling SSE and
MMX for kernel code is extremely useful. */
+ if (!ix86_arch_specified)
ix86_isa_flags
|= ((OPTION_MASK_ISA_SSE2 | OPTION_MASK_ISA_SSE | OPTION_MASK_ISA_MMX
| TARGET_SUBTARGET64_ISA_DEFAULT) & ~ix86_isa_flags_explicit);
@@ -2241,6 +2246,7 @@ override_options (void)
{
target_flags |= TARGET_SUBTARGET32_DEFAULT & ~target_flags_explicit;
+ if (!ix86_arch_specified)
ix86_isa_flags
|= TARGET_SUBTARGET32_ISA_DEFAULT & ~ix86_isa_flags_explicit;