From a8cabcd7b936d756862bcf6611215a117a87c8e2 Mon Sep 17 00:00:00 2001 From: drow Date: Sat, 10 Jul 2004 19:01:40 +0000 Subject: [PATCH] * config/i386/i386.c (override_options): Pick a 64-bit CPU for the default tuning if TARGET_64BIT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84470 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/config/i386/i386.c | 22 ++++++++++++++++++++-- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e6d9dd85dbc..3ce75e9dbb8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-07-10 Daniel Jacobowitz + + * config/i386/i386.c (override_options): Pick a 64-bit CPU + for the default tuning if TARGET_64BIT. + 2004-07-10 Richard Henderson * builtins.c (std_gimplify_va_arg_expr): Widen align/boundary diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 7d7312ca6d0..dafc60afe41 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -1097,6 +1097,8 @@ void override_options (void) { int i; + int ix86_tune_defaulted = 0; + /* Comes from final.c -- no real reason to change it. */ #define MAX_CODE_ALIGN 16 @@ -1221,7 +1223,10 @@ override_options (void) if (!ix86_tune_string && ix86_arch_string) ix86_tune_string = ix86_arch_string; if (!ix86_tune_string) - ix86_tune_string = cpu_names [TARGET_CPU_DEFAULT]; + { + ix86_tune_string = cpu_names [TARGET_CPU_DEFAULT]; + ix86_tune_defaulted = 1; + } if (!ix86_arch_string) ix86_arch_string = TARGET_64BIT ? "x86-64" : "i386"; @@ -1293,7 +1298,20 @@ override_options (void) if (processor_alias_table[i].flags & PTA_PREFETCH_SSE) x86_prefetch_sse = true; if (TARGET_64BIT && !(processor_alias_table[i].flags & PTA_64BIT)) - error ("CPU you selected does not support x86-64 instruction set"); + { + if (ix86_tune_defaulted) + { + ix86_tune_string = "x86-64"; + for (i = 0; i < pta_size; i++) + if (! strcmp (ix86_tune_string, + processor_alias_table[i].name)) + break; + ix86_tune = processor_alias_table[i].processor; + } + else + error ("CPU you selected does not support x86-64 " + "instruction set"); + } break; } -- 2.11.4.GIT