gcc -march = XXX和-mtune = XXX标志的所有可能选项是什么?

时间:2016-06-28 23:40:37

标签: gcc

似乎文档:https://gcc.gnu.org/onlinedocs/gcc-4.5.4/gcc/i386-and-x86_002d64-Options.html对-march = XXX(和-mtune = XXX)的选项有些不完整, all 可能的选项是什么?

1 个答案:

答案 0 :(得分:3)

确定找到了更新的列表,谷歌不会带你到那里,你必须手动找到它:https://gcc.gnu.org/onlinedocs/gcc-5.4.0/gcc/x86-Options.html#x86-Options

出现的列表是:

32位处理器:

athlon
athlon-4
athlon-fx
athlon-mp
athlon-tbird
athlon-xp
k6
k6-2
k6-3
geode
c3
c3-2
winchip-c6
winchip2
i386
i486
i586
i686
pentium
pentium-m
pentium-mmx
pentium2
pentium3
pentium3m
pentium4
pentium4m
pentiumpro
prescott
lakemont

64位处理器:(请注意,您也可以将其用作32位编译器的marchmtune值。

amdfam10
athlon64
athlon64-sse3
barcelona
bdver1
bdver2
bdver3
bdver4
znver1
btver1
btver2
k8
k8-sse3
opteron
opteron-sse3
nocona
core2
corei7
corei7-avx
core-avx-i
core-avx2
atom
slm
nehalem
westmere
sandybridge
ivybridge
haswell
broadwell
bonnell
silvermont
knl
skylake-avx512
x86-64 # this is some kind of "generic 64 bit" option apparently

还有一些例外:-mtune也可以有-mtune=generic-march可以有-march=native(本机含义“与构建它的编译器盒相同”)

参考文献:

https://github.com/gcc-mirror/gcc/blob/21ecea397b2b4725f89d1693aaa6df74d3dcfa27/gcc/config.gcc#L587

https://github.com/gcc-mirror/gcc/blob/c7f16cfa30360489a9d42e244cb800c7da0396d9/gcc/config/i386/i386.h#L334

https://github.com/pixelb/scripts/blob/master/scripts/gcccpuopt

您还可以访问最新版GCC的文档,可以找到here

这是一个社区维基,可以随意添加以后出现的任何内容,或者添加对这些内容的解释,如果有任何等价类等等。