* Jakub Jelinek: > On Wed, Sep 30, 2020 at 06:06:31PM +0200, Florian Weimer wrote: >> --- a/gcc/common/config/i386/i386-common.c >> +++ b/gcc/common/config/i386/i386-common.c >> @@ -1795,9 +1795,13 @@ const pta processor_alias_table[] = >> PTA_MMX | PTA_3DNOW | PTA_3DNOW_A | PTA_SSE | PTA_FXSR, 0, P_NONE}, >> {"athlon-mp", PROCESSOR_ATHLON, CPU_ATHLON, >> PTA_MMX | PTA_3DNOW | PTA_3DNOW_A | PTA_SSE | PTA_FXSR, 0, P_NONE}, >> - {"x86-64", PROCESSOR_K8, CPU_K8, >> - PTA_64BIT | PTA_MMX | PTA_SSE | PTA_SSE2 | PTA_NO_SAHF | PTA_FXSR, >> - 0, P_NONE}, >> + {"x86-64", PROCESSOR_K8, CPU_K8, PTA_X86_64_BASELINE, 0, P_NONE}, >> + {"x86-64-v2", PROCESSOR_K8, CPU_GENERIC, PTA_X86_64_V2 | PTA_NO_TUNE, >> + 0, P_NONE}, >> + {"x86-64-v3", PROCESSOR_K8, CPU_GENERIC, PTA_X86_64_V3 | PTA_NO_TUNE, >> + 0, P_NONE}, >> + {"x86-64-v4", PROCESSOR_K8, CPU_GENERIC, PTA_X86_64_V4 | PTA_NO_TUNE, >> + 0, P_NONE}, >> {"eden-x2", PROCESSOR_K8, CPU_K8, >> PTA_64BIT | PTA_MMX | PTA_SSE | PTA_SSE2 | PTA_SSE3 | PTA_FXSR, >> 0, P_NONE}, > > I have noticed that one can't configure gcc to default to these. > > I've also found various other 32-bit or 64-bit -march= arguments for which > it wasn't possible to configure gcc to default to those. > > The x86-64-v* the patch only allows in --with-arch_64=, because otherwise > it fails build miserably - as > ./xgcc -B ./ -S -march=x86-64-v2 -m32 test.c > cc1: error: ‘x86-64-v2’ architecture level is only defined for the x86-64 > psABI > when building 32-bit multilibs. Even if multilibs are disallowed, I think > the compiler still supports -m32 and so --with-arch_64= seems to be the only > option in which we can support that.
Yes, that was certainly my intent.