Hi.

Following patch adds "native" as a possible option for -march value on i386 
target.
I have similar patches for other targets. Would it be possible to install the
patch in current stage?

Before:
$ ./xgcc -B. -march=abcdef /tmp/empty.c
cc1: error: bad value (‘abcdef’) for ‘-march=’ switch
cc1: note: valid arguments to ‘-march=’ switch are: nocona core2 nehalem corei7 
westmere sandybridge corei7-avx ivybridge core-avx-i haswell core-avx2 
broadwell skylake skylake-avx512 cannonlake icelake bonnell atom silvermont slm 
knl knm x86-64 eden-x2 nano nano-1000 nano-2000 nano-3000 nano-x2 eden-x4 
nano-x4 k8 k8-sse3 opteron opteron-sse3 athlon64 athlon64-sse3 athlon-fx 
amdfam10 barcelona bdver1 bdver2 bdver3 bdver4 znver1 btver1 btver2

After:
$ ./xgcc -B. -march=abcdef /tmp/empty.c
cc1: error: bad value (‘abcdef’) for ‘-march=’ switch
cc1: note: valid arguments to ‘-march=’ switch are: nocona core2 nehalem corei7 
westmere sandybridge corei7-avx ivybridge core-avx-i haswell core-avx2 
broadwell skylake skylake-avx512 cannonlake icelake bonnell atom silvermont slm 
knl knm x86-64 eden-x2 nano nano-1000 nano-2000 nano-3000 nano-x2 eden-x4 
nano-x4 k8 k8-sse3 opteron opteron-sse3 athlon64 athlon64-sse3 athlon-fx 
amdfam10 barcelona bdver1 bdver2 bdver3 bdver4 znver1 btver1 btver2 native

$ ./xgcc -B. -march=native2 /tmp/empty.c
cc1: error: bad value (‘native2’) for ‘-march=’ switch
cc1: note: valid arguments to ‘-march=’ switch are: nocona core2 nehalem corei7 
westmere sandybridge corei7-avx ivybridge core-avx-i haswell core-avx2 
broadwell skylake skylake-avx512 cannonlake icelake bonnell atom silvermont slm 
knl knm x86-64 eden-x2 nano nano-1000 nano-2000 nano-3000 nano-x2 eden-x4 
nano-x4 k8 k8-sse3 opteron opteron-sse3 athlon64 athlon64-sse3 athlon-fx 
amdfam10 barcelona bdver1 bdver2 bdver3 bdver4 znver1 btver1 btver2 native; did 
you mean ‘native’?

Ready for trunk after tests?
Thanks
Martin

gcc/ChangeLog:

2018-02-20  Martin Liska  <mli...@suse.cz>

        PR driver/83193
        * config/i386/i386.c (ix86_option_override_internal):
        Add "native" as a possible value.
---
 gcc/config/i386/i386.c | 3 +++
 1 file changed, 3 insertions(+)


diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index d54e7301e84..361d4df2663 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -4193,6 +4193,9 @@ ix86_option_override_internal (bool main_args_p,
 		|| ((processor_alias_table[i].flags & PTA_64BIT) != 0)))
 	  candidates.safe_push (processor_alias_table[i].name);
 
+      /* Add also "native" as possible value.  */
+      candidates.safe_push ("native");
+
       char *s;
       const char *hint
 	= candidates_list_and_hint (opts->x_ix86_arch_string, s, candidates);

Reply via email to