diff options
-rw-r--r-- | .SRCINFO | 2 | ||||
-rw-r--r-- | PKGBUILD | 7 | ||||
-rwxr-xr-x | choose-gcc-optimization.sh | 138 |
3 files changed, 82 insertions, 65 deletions
@@ -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 @@ -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 e7852e9a28ee..f10eec54b81d 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 - |