|
@@ -19,12 +19,20 @@ config BR2_X86_CPU_HAS_AVX
|
|
|
bool
|
|
|
config BR2_X86_CPU_HAS_AVX2
|
|
|
bool
|
|
|
+
|
|
|
+# BR2_X86_CPU_HAS_AVX512 implies the following AVX512 extensions:
|
|
|
+# AVX512F, AVX512BW, AVX512CD, AVX512DQ, AVX512VL
|
|
|
+# This subset is common to Intel Xeon (excl Xeon Phi), AMD Zen 4, and
|
|
|
+# the x86-64-v4 psABI.
|
|
|
+#
|
|
|
+# Only select BR2_X86_CPU_HAS_AVX512 if the CPU supports this entire
|
|
|
+# subset of extensions.
|
|
|
config BR2_X86_CPU_HAS_AVX512
|
|
|
bool
|
|
|
|
|
|
# This list of CPU architecture variant is (loosely) ordered according
|
|
|
# to the gcc documentation at
|
|
|
-# https://gcc.gnu.org/onlinedocs/gcc-11.2.0/gcc/x86-Options.html
|
|
|
+# https://gcc.gnu.org/onlinedocs/gcc-13.2.0/gcc/x86-Options.html
|
|
|
choice
|
|
|
prompt "Target Architecture Variant"
|
|
|
default BR2_x86_i586 if BR2_i386
|
|
@@ -227,6 +235,17 @@ config BR2_x86_sandybridge
|
|
|
select BR2_X86_CPU_HAS_SSE42
|
|
|
select BR2_X86_CPU_HAS_AVX
|
|
|
select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
|
|
|
+config BR2_x86_ivybridge
|
|
|
+ bool "ivybridge"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
|
|
|
config BR2_x86_core_avx2
|
|
|
bool "core-avx2"
|
|
|
select BR2_X86_CPU_HAS_MMX
|
|
@@ -335,6 +354,54 @@ config BR2_x86_tremont
|
|
|
select BR2_X86_CPU_HAS_SSE4
|
|
|
select BR2_X86_CPU_HAS_SSE42
|
|
|
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
|
|
+config BR2_x86_sierraforest
|
|
|
+ bool "sierraforest"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_X86_CPU_HAS_AVX2
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
|
|
+config BR2_x86_grandridge
|
|
|
+ bool "grandridge"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_X86_CPU_HAS_AVX2
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
|
|
+config BR2_x86_knightslanding
|
|
|
+ bool "knightslanding"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_X86_CPU_HAS_AVX2
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
|
|
+config BR2_x86_knightsmill
|
|
|
+ bool "knightsmill"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_X86_CPU_HAS_AVX2
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_8
|
|
|
config BR2_x86_skylake_avx512
|
|
|
bool "skylake-avx512"
|
|
|
select BR2_X86_CPU_HAS_MMX
|
|
@@ -439,6 +506,8 @@ config BR2_x86_sapphirerapids
|
|
|
select BR2_X86_CPU_HAS_AVX2
|
|
|
select BR2_X86_CPU_HAS_AVX512
|
|
|
select BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
|
|
+ help
|
|
|
+ Use for Sapphire Rapids, Emerald Rapids
|
|
|
config BR2_x86_alderlake
|
|
|
bool "alderlake"
|
|
|
select BR2_X86_CPU_HAS_MMX
|
|
@@ -451,6 +520,8 @@ config BR2_x86_alderlake
|
|
|
select BR2_X86_CPU_HAS_AVX
|
|
|
select BR2_X86_CPU_HAS_AVX2
|
|
|
select BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
|
|
+ help
|
|
|
+ Use for Alder Lake, Raptor Lake, Meteor Lake
|
|
|
config BR2_x86_rocketlake
|
|
|
bool "rocketlake"
|
|
|
select BR2_X86_CPU_HAS_MMX
|
|
@@ -464,6 +535,32 @@ config BR2_x86_rocketlake
|
|
|
select BR2_X86_CPU_HAS_AVX2
|
|
|
select BR2_X86_CPU_HAS_AVX512
|
|
|
select BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
|
|
+config BR2_x86_graniterapids
|
|
|
+ bool "graniterapids"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_X86_CPU_HAS_AVX2
|
|
|
+ select BR2_X86_CPU_HAS_AVX512
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
|
|
+config BR2_x86_graniterapids_d
|
|
|
+ bool "graniterapids-d"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_X86_CPU_HAS_AVX2
|
|
|
+ select BR2_X86_CPU_HAS_AVX512
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
|
|
config BR2_x86_k6
|
|
|
bool "k6"
|
|
|
depends on !BR2_x86_64
|
|
@@ -501,6 +598,13 @@ config BR2_x86_barcelona
|
|
|
select BR2_X86_CPU_HAS_SSE
|
|
|
select BR2_X86_CPU_HAS_SSE2
|
|
|
select BR2_X86_CPU_HAS_SSE3
|
|
|
+config BR2_x86_bobcat
|
|
|
+ bool "bobcat"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
config BR2_x86_jaguar
|
|
|
bool "jaguar"
|
|
|
select BR2_X86_CPU_HAS_MMX
|
|
@@ -510,6 +614,25 @@ config BR2_x86_jaguar
|
|
|
select BR2_X86_CPU_HAS_SSSE3
|
|
|
select BR2_X86_CPU_HAS_SSE4
|
|
|
select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8
|
|
|
+config BR2_x86_bulldozer
|
|
|
+ bool "bulldozer"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+config BR2_x86_piledriver
|
|
|
+ bool "piledriver"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
config BR2_x86_steamroller
|
|
|
bool "steamroller"
|
|
|
select BR2_X86_CPU_HAS_MMX
|
|
@@ -519,6 +642,68 @@ config BR2_x86_steamroller
|
|
|
select BR2_X86_CPU_HAS_SSSE3
|
|
|
select BR2_X86_CPU_HAS_SSE4
|
|
|
select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8
|
|
|
+config BR2_x86_excavator
|
|
|
+ bool "excavator"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_X86_CPU_HAS_AVX2
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
|
|
|
+config BR2_x86_zen
|
|
|
+ bool "zen"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_X86_CPU_HAS_AVX2
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
|
|
+config BR2_x86_zen2
|
|
|
+ bool "zen 2"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_X86_CPU_HAS_AVX2
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
|
|
+config BR2_x86_zen3
|
|
|
+ bool "zen 3"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_X86_CPU_HAS_AVX2
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
|
|
+config BR2_x86_zen4
|
|
|
+ bool "zen 4"
|
|
|
+ select BR2_X86_CPU_HAS_MMX
|
|
|
+ select BR2_X86_CPU_HAS_SSE
|
|
|
+ select BR2_X86_CPU_HAS_SSE2
|
|
|
+ select BR2_X86_CPU_HAS_SSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSSE3
|
|
|
+ select BR2_X86_CPU_HAS_SSE4
|
|
|
+ select BR2_X86_CPU_HAS_SSE42
|
|
|
+ select BR2_X86_CPU_HAS_AVX
|
|
|
+ select BR2_X86_CPU_HAS_AVX2
|
|
|
+ select BR2_X86_CPU_HAS_AVX512
|
|
|
+ select BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
|
|
config BR2_x86_geode
|
|
|
bool "geode (no mmx)"
|
|
|
depends on !BR2_x86_64
|
|
@@ -603,6 +788,7 @@ config BR2_GCC_TARGET_ARCH
|
|
|
default "nehalem" if BR2_x86_nehalem
|
|
|
default "corei7-avx" if BR2_x86_corei7_avx
|
|
|
default "sandybridge" if BR2_x86_sandybridge
|
|
|
+ default "ivybridge" if BR2_x86_ivybridge
|
|
|
default "core-avx2" if BR2_x86_core_avx2
|
|
|
default "haswell" if BR2_x86_haswell
|
|
|
default "broadwell" if BR2_x86_broadwell
|
|
@@ -614,6 +800,10 @@ config BR2_GCC_TARGET_ARCH
|
|
|
default "goldmont" if BR2_x86_goldmont
|
|
|
default "goldmont-plus" if BR2_x86_goldmont_plus
|
|
|
default "tremont" if BR2_x86_tremont
|
|
|
+ default "sierraforest" if BR2_x86_sierraforest
|
|
|
+ default "grandridge" if BR2_x86_grandridge
|
|
|
+ default "knl" if BR2_x86_knightslanding
|
|
|
+ default "knm" if BR2_x86_knightsmill
|
|
|
default "skylake-avx512" if BR2_x86_skylake_avx512
|
|
|
default "cannonlake" if BR2_x86_cannonlake
|
|
|
default "icelake-client" if BR2_x86_icelake_client
|
|
@@ -624,11 +814,21 @@ config BR2_GCC_TARGET_ARCH
|
|
|
default "sapphirerapids" if BR2_x86_sapphirerapids
|
|
|
default "alderlake" if BR2_x86_alderlake
|
|
|
default "rocketlake" if BR2_x86_rocketlake
|
|
|
+ default "graniterapids" if BR2_x86_graniterapids
|
|
|
+ default "graniterapids-d" if BR2_x86_graniterapids_d
|
|
|
default "k8" if BR2_x86_opteron
|
|
|
default "k8-sse3" if BR2_x86_opteron_sse3
|
|
|
default "barcelona" if BR2_x86_barcelona
|
|
|
+ default "btver1" if BR2_x86_bobcat
|
|
|
default "btver2" if BR2_x86_jaguar
|
|
|
+ default "bdver1" if BR2_x86_bulldozer
|
|
|
+ default "bdver2" if BR2_x86_piledriver
|
|
|
default "bdver3" if BR2_x86_steamroller
|
|
|
+ default "bdver4" if BR2_x86_excavator
|
|
|
+ default "znver1" if BR2_x86_zen
|
|
|
+ default "znver2" if BR2_x86_zen2
|
|
|
+ default "znver3" if BR2_x86_zen3
|
|
|
+ default "znver4" if BR2_x86_zen4
|
|
|
default "k6" if BR2_x86_k6
|
|
|
default "k6-2" if BR2_x86_k6_2
|
|
|
default "athlon" if BR2_x86_athlon
|