i386.c (override_options): If we've specified an arch then don't use TARGET_SUBTARGET_ISA_DEFAULTs.

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.

From-SVN: r125685
This commit is contained in:
Eric Christopher 2007-06-13 22:06:15 +00:00
parent 59be80716a
commit b26f6ed7b9
2 changed files with 21 additions and 10 deletions

View File

@ -1,3 +1,8 @@
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.
2007-06-13 Bob Wilson <bob.wilson@acm.org> 2007-06-13 Bob Wilson <bob.wilson@acm.org>
* df-scan.c (df_get_entry_block_def_set): Check if STATIC_CHAIN_REGNUM * df-scan.c (df_get_entry_block_def_set): Check if STATIC_CHAIN_REGNUM

View File

@ -1706,6 +1706,7 @@ override_options (void)
{ {
int i; int i;
int ix86_tune_defaulted = 0; int ix86_tune_defaulted = 0;
int ix86_arch_specified = 0;
unsigned int ix86_arch_mask, ix86_tune_mask; unsigned int ix86_arch_mask, ix86_tune_mask;
/* Comes from final.c -- no real reason to change it. */ /* Comes from final.c -- no real reason to change it. */
@ -1953,6 +1954,9 @@ override_options (void)
if (!ix86_arch_string) if (!ix86_arch_string)
ix86_arch_string = TARGET_64BIT ? "x86-64" : "i386"; ix86_arch_string = TARGET_64BIT ? "x86-64" : "i386";
else
ix86_arch_specified = 1;
if (!strcmp (ix86_arch_string, "generic")) if (!strcmp (ix86_arch_string, "generic"))
error ("generic CPU can be used only for -mtune= switch"); error ("generic CPU can be used only for -mtune= switch");
if (!strncmp (ix86_arch_string, "generic", 7)) 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 /* Enable by default the SSE and MMX builtins. Do allow the user to
explicitly disable any of these. In particular, disabling SSE and explicitly disable any of these. In particular, disabling SSE and
MMX for kernel code is extremely useful. */ MMX for kernel code is extremely useful. */
if (!ix86_arch_specified)
ix86_isa_flags ix86_isa_flags
|= ((OPTION_MASK_ISA_SSE2 | OPTION_MASK_ISA_SSE | OPTION_MASK_ISA_MMX |= ((OPTION_MASK_ISA_SSE2 | OPTION_MASK_ISA_SSE | OPTION_MASK_ISA_MMX
| TARGET_SUBTARGET64_ISA_DEFAULT) & ~ix86_isa_flags_explicit); | TARGET_SUBTARGET64_ISA_DEFAULT) & ~ix86_isa_flags_explicit);
@ -2241,6 +2246,7 @@ override_options (void)
{ {
target_flags |= TARGET_SUBTARGET32_DEFAULT & ~target_flags_explicit; target_flags |= TARGET_SUBTARGET32_DEFAULT & ~target_flags_explicit;
if (!ix86_arch_specified)
ix86_isa_flags ix86_isa_flags
|= TARGET_SUBTARGET32_ISA_DEFAULT & ~ix86_isa_flags_explicit; |= TARGET_SUBTARGET32_ISA_DEFAULT & ~ix86_isa_flags_explicit;