summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO2
-rw-r--r--PKGBUILD7
-rwxr-xr-xchoose-gcc-optimization.sh138
3 files changed, 82 insertions, 65 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 75e5551188a..fce7cb66d35 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -24,7 +24,7 @@ pkgbase = linux-xanmod-cacule-uksm-cjktty
b2sums = 9c4c12e2394dec064adff51f7ccdf389192eb27ba7906db5eda543afe3d04afca6b9ea0848a057571bf2534eeb98e1e3a67734deff82c0d3731be205ad995668
b2sums = SKIP
b2sums = 349c53d427fc4b0cbbdb25211bc38947fef4bfea7636dba4ba6ce4ca24f9f8fdf2775a499ec4cc798bec37c4b216d25aad1a55b866d224f29ab4f4daf89f69b3
- b2sums = 2f0d5ddc9a1003958e8a3745cb42e47af8e7ff9961dd3d2ea070cc72444b5c63763f953b393bdd7c8a31f3ea29e8d3c86cc8647ae67bb054e22bce34af492ce1
+ b2sums = 610a717e50339b45573dfd0b00da20ef3797053d93a5116673756f8644fbd4fbca9e82587225ebb94a5c51b0e5f1b92329d515c8c60466b41c6845ed06a7405a
b2sums = cb72248c2226b5c1a39422d9d9a79a4f9331c965a888185f421619185231a290d74e273c2323ab2c9340adfb269259825da781af423674abfbc9be909db0cc35
b2sums = 066e1d2cf209eed973957b00eebe3cbcce37b77e9ab0ef115da0aa6984ac6dea1b5d43fedd6e87dbda042b620a7684eae6c36a739f7a49e0f96ebd41867947f4
b2sums = c88d3053e0e1d1145ec7d487df7ed1c18b8a4e8cf62f8fc9e05baa5f1b270aa64177f33b13c1d409e63a83691cc530e5f848ab73bfd2b10f60cdb681b9e310c1
diff --git a/PKGBUILD b/PKGBUILD
index c4e04250973..6d7284ebef8 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -17,8 +17,9 @@
## Look inside 'choose-gcc-optimization.sh' to choose your microarchitecture
## Valid numbers between: 0 to 42
## Default is: 0 => generic
-## Good option if your package is for one machine: 42 => native
-## I choose native to let it optimization itself, you can change it by yourself
+## Good option if your package is for one machine: 98 => Intel native
+## 99 => AMD native
+## I choose generic, you can change it by yourself
if [ -z ${_microarchitecture+x} ]; then
_microarchitecture=0
fi
@@ -113,7 +114,7 @@ done
b2sums=('9c4c12e2394dec064adff51f7ccdf389192eb27ba7906db5eda543afe3d04afca6b9ea0848a057571bf2534eeb98e1e3a67734deff82c0d3731be205ad995668'
'SKIP'
'349c53d427fc4b0cbbdb25211bc38947fef4bfea7636dba4ba6ce4ca24f9f8fdf2775a499ec4cc798bec37c4b216d25aad1a55b866d224f29ab4f4daf89f69b3'
- '2f0d5ddc9a1003958e8a3745cb42e47af8e7ff9961dd3d2ea070cc72444b5c63763f953b393bdd7c8a31f3ea29e8d3c86cc8647ae67bb054e22bce34af492ce1'
+ '610a717e50339b45573dfd0b00da20ef3797053d93a5116673756f8644fbd4fbca9e82587225ebb94a5c51b0e5f1b92329d515c8c60466b41c6845ed06a7405a'
'cb72248c2226b5c1a39422d9d9a79a4f9331c965a888185f421619185231a290d74e273c2323ab2c9340adfb269259825da781af423674abfbc9be909db0cc35'
'066e1d2cf209eed973957b00eebe3cbcce37b77e9ab0ef115da0aa6984ac6dea1b5d43fedd6e87dbda042b620a7684eae6c36a739f7a49e0f96ebd41867947f4'
'c88d3053e0e1d1145ec7d487df7ed1c18b8a4e8cf62f8fc9e05baa5f1b270aa64177f33b13c1d409e63a83691cc530e5f848ab73bfd2b10f60cdb681b9e310c1'
diff --git a/choose-gcc-optimization.sh b/choose-gcc-optimization.sh
index e7852e9a28e..f10eec54b81 100755
--- a/choose-gcc-optimization.sh
+++ b/choose-gcc-optimization.sh
@@ -25,37 +25,46 @@ cat << EOF
12) AMD Family 15h (Excavator)
13) AMD Family 17h (Zen)
14) AMD Family 17h (Zen 2)
- 15) Transmeta Crusoe
- 16) Transmeta Efficeon
- 17) IDT Winchip C6
- 18) Winchip-2/Winchip-2A/Winchip-3
- 19) AMD Elan
- 20) Geode GX1 (Cyrix MediaGX)
- 21) AMD Geode GX and LX
- 22) Cyrix III or C3
- 23) VIA C3 "Nehemiah"
- 24) VIA C7
- 25) Intel Pentium 4, Pentium D and older Nocona/Dempsey Xeon CPUs with Intel 64bit
- 26) Intel Atom
- 27) Intel Core 2 and newer Core 2 Xeons (Xeon 51xx and 53xx)
- 28) Intel 1st Gen Core i3/i5/i7-family (Nehalem)
- 29) Intel 1.5 Gen Core i3/i5/i7-family (Westmere)
- 30) Intel Silvermont
- 31) Intel Goldmont (Apollo Lake and Denverton)
- 32) Intel Goldmont Plus (Gemini Lake)
- 33) Intel 2nd Gen Core i3/i5/i7-family (Sandybridge)
- 34) Intel 3rd Gen Core i3/i5/i7-family (Ivybridge)
- 35) Intel 4th Gen Core i3/i5/i7-family (Haswell)
- 36) Intel 5th Gen Core i3/i5/i7-family (Broadwell)
- 37) Intel 6th Gen Core i3/i5/i7-family (Skylake)
- 38) Intel 6th Gen Core i7/i9-family (Skylake X)
- 39) Intel 8th Gen Core i3/i5/i7-family (Cannon Lake)
- 40) Intel 8th Gen Core i7/i9-family (Ice Lake)
- 41) Xeon processors in the Cascade Lake family
- 42) Intel Xeon (Cooper Lake)
- 43) Intel 3rd Gen 10nm++ i3/i5/i7/i9-family (Tiger Lake)
+ 15) AMD Family 19h Zen 3 processors (Zen 3)
+ 16) Transmeta Crusoe
+ 17) Transmeta Efficeon
+ 18) IDT Winchip C6
+ 19) Winchip-2/Winchip-2A/Winchip-3
+ 20) AMD Elan
+ 21) Geode GX1 (Cyrix MediaGX)
+ 22) AMD Geode GX and LX
+ 23) Cyrix III or C3
+ 24) VIA C3 "Nehemiah"
+ 25) VIA C7
+ 26) Intel Pentium 4, Pentium D and older Nocona/Dempsey Xeon CPUs with Intel 64bit
+ 27) Intel Atom
+ 28) Intel Core 2 and newer Core 2 Xeons (Xeon 51xx and 53xx)
+ 29) Intel 1st Gen Core i3/i5/i7-family (Nehalem)
+ 30) Intel 1.5 Gen Core i3/i5/i7-family (Westmere)
+ 31) Intel Silvermont
+ 32) Intel Goldmont (Apollo Lake and Denverton)
+ 33) Intel Goldmont Plus (Gemini Lake)
+ 34) Intel 2nd Gen Core i3/i5/i7-family (Sandybridge)
+ 35) Intel 3rd Gen Core i3/i5/i7-family (Ivybridge)
+ 36) Intel 4th Gen Core i3/i5/i7-family (Haswell)
+ 37) Intel 5th Gen Core i3/i5/i7-family (Broadwell)
+ 38) Intel 6th Gen Core i3/i5/i7-family (Skylake)
+ 39) Intel 6th Gen Core i7/i9-family (Skylake X)
+ 40) Intel 8th Gen Core i3/i5/i7-family (Cannon Lake)
+ 41) Intel 8th Gen Core i7/i9-family (Ice Lake)
+ 42) Xeon processors in the Cascade Lake family
+ 43) Intel Xeon (Cooper Lake)
+ 44) Intel 3rd Gen 10nm++ i3/i5/i7/i9-family (Tiger Lake)
+ 45) Intel Sapphire Rapids
+ 46) Intel Rocket Lake
+ 47) Intel Alder Lake
- 99) Native optimizations autodetected by GCC
+ 92) Generic-x86-64-v2 (Nehalem and newer)
+ 93) Generic-x86-64-v3 (Haswell and newer)
+ 94) Generic-x86-64-v4 (AVX512 CPUs)
+
+ 98) Intel-Native optimizations autodetected by GCC
+ 99) AMD-Native optimizations autodetected by GCC
0) Generic (default)
@@ -79,36 +88,44 @@ case $answer in
12) Microarchitecture=CONFIG_MEXCAVATOR ;;
13) Microarchitecture=CONFIG_MZEN ;;
14) Microarchitecture=CONFIG_MZEN2 ;;
- 15) Microarchitecture=CONFIG_MCRUSOE ;;
- 16) Microarchitecture=CONFIG_MEFFICEON ;;
- 17) Microarchitecture=CONFIG_MWINCHIPC6 ;;
- 18) Microarchitecture=CONFIG_MWINCHIP3D ;;
- 19) Microarchitecture=CONFIG_MELAN ;;
- 20) Microarchitecture=CONFIG_MGEODEGX1 ;;
- 21) Microarchitecture=CONFIG_MGEODE_LX ;;
- 22) Microarchitecture=CONFIG_MCYRIXIII ;;
- 23) Microarchitecture=CONFIG_MVIAC3_2 ;;
- 24) Microarchitecture=CONFIG_MVIAC7 ;;
- 25) Microarchitecture=CONFIG_MPSC ;;
- 26) Microarchitecture=CONFIG_MATOM ;;
- 27) Microarchitecture=CONFIG_MCORE2 ;;
- 28) Microarchitecture=CONFIG_MNEHALEM ;;
- 29) Microarchitecture=CONFIG_MWESTMERE ;;
- 30) Microarchitecture=CONFIG_MSILVERMONT ;;
- 31) Microarchitecture=CONFIG_MGOLDMONT ;;
- 32) Microarchitecture=CONFIG_MGOLDMONTPLUS ;;
- 33) Microarchitecture=CONFIG_MSANDYBRIDGE ;;
- 34) Microarchitecture=CONFIG_MIVYBRIDGE ;;
- 35) Microarchitecture=CONFIG_MHASWELL ;;
- 36) Microarchitecture=CONFIG_MBROADWELL ;;
- 37) Microarchitecture=CONFIG_MSKYLAKE ;;
- 38) Microarchitecture=CONFIG_MSKYLAKEX ;;
- 39) Microarchitecture=CONFIG_MCANNONLAKE ;;
- 40) Microarchitecture=CONFIG_MICELAKE ;;
- 41) Microarchitecture=CONFIG_MCASCADELAKE ;;
- 42) Microarchitecture=CONFIG_MCOOPERLAKE ;;
- 43) Microarchitecture=CONFIG_MTIGERLAKE ;;
- 99) Microarchitecture=CONFIG_MNATIVE ;;
+ 15) Microarchitecture=CONFIG_MZEN3 ;;
+ 16) Microarchitecture=CONFIG_MCRUSOE ;;
+ 17) Microarchitecture=CONFIG_MEFFICEON ;;
+ 18) Microarchitecture=CONFIG_MWINCHIPC6 ;;
+ 19) Microarchitecture=CONFIG_MWINCHIP3D ;;
+ 20) Microarchitecture=CONFIG_MELAN ;;
+ 21) Microarchitecture=CONFIG_MGEODEGX1 ;;
+ 22) Microarchitecture=CONFIG_MGEODE_LX ;;
+ 23) Microarchitecture=CONFIG_MCYRIXIII ;;
+ 24) Microarchitecture=CONFIG_MVIAC3_2 ;;
+ 25) Microarchitecture=CONFIG_MVIAC7 ;;
+ 26) Microarchitecture=CONFIG_MPSC ;;
+ 27) Microarchitecture=CONFIG_MATOM ;;
+ 28) Microarchitecture=CONFIG_MCORE2 ;;
+ 29) Microarchitecture=CONFIG_MNEHALEM ;;
+ 30) Microarchitecture=CONFIG_MWESTMERE ;;
+ 31) Microarchitecture=CONFIG_MSILVERMONT ;;
+ 32) Microarchitecture=CONFIG_MGOLDMONT ;;
+ 33) Microarchitecture=CONFIG_MGOLDMONTPLUS ;;
+ 34) Microarchitecture=CONFIG_MSANDYBRIDGE ;;
+ 35) Microarchitecture=CONFIG_MIVYBRIDGE ;;
+ 36) Microarchitecture=CONFIG_MHASWELL ;;
+ 37) Microarchitecture=CONFIG_MBROADWELL ;;
+ 38) Microarchitecture=CONFIG_MSKYLAKE ;;
+ 39) Microarchitecture=CONFIG_MSKYLAKEX ;;
+ 40) Microarchitecture=CONFIG_MCANNONLAKE ;;
+ 41) Microarchitecture=CONFIG_MICELAKE ;;
+ 42) Microarchitecture=CONFIG_MCASCADELAKE ;;
+ 43) Microarchitecture=CONFIG_MCOOPERLAKE ;;
+ 44) Microarchitecture=CONFIG_MTIGERLAKE ;;
+ 45) Microarchitecture=CONFIG_MSAPPHIRERAPIDS ;;
+ 46) Microarchitecture=CONFIG_MROCKETLAKE ;;
+ 47) Microarchitecture=CONFIG_MALDERLAKE ;;
+ 92) Microarchitecture=CONFIG_GENERIC_CPU2 ;;
+ 93) Microarchitecture=CONFIG_GENERIC_CPU3 ;;
+ 94) Microarchitecture=CONFIG_GENERIC_CPU4 ;;
+ 98) Microarchitecture=CONFIG_MNATIVE_INTEL ;;
+ 99) Microarchitecture=CONFIG_MNATIVE_AMD ;;
*) default=CONFIG_GENERIC_CPU ;;
esac
@@ -120,4 +137,3 @@ sed -e 's|^CONFIG_GENERIC_CPU=y|# CONFIG_GENERIC_CPU is not set|g' -i .config
sed -e "s|^# $Microarchitecture is not set|$Microarchitecture=y|g" -i .config
echo
-