mirror of
https://git.yoctoproject.org/meta-arm
synced 2026-04-20 11:29:54 +00:00
arm-bsp: ARMv8-2a: Add tuning files
Add all the available ARMv8.2 tunings from GCC. This belongs in OE-Core, but adding here so that it can be used while trying to upstream there. Change-Id: I5025eef6d18545478116b5079daf9c4d12e93dca Signed-off-by: Jon Mason <jon.mason@arm.com> Reviewed-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
DEFAULTTUNE ?= "cortexa75-cortexa55"
|
||||
|
||||
TUNEVALID[cortexa75-cortexa55] = "Enable big.LITTLE Cortex-A75.Cortex-A55 specific processor optimizations"
|
||||
TUNECONFLICTS[aarch64] = "armv4 armv5 armv6 armv7 armv7a"
|
||||
MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa75-cortexa55", "cortexa75-cortexa55:", "" ,d)}"
|
||||
TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa75-cortexa55", " -mcpu=cortex-a75.cortex-a55", "", d)}"
|
||||
|
||||
require conf/machine/include/arm/arch-armv8-2a.inc
|
||||
|
||||
# cortexa75.cortexa55 implies crc support
|
||||
AVAILTUNES += "cortexa75-cortexa55 cortexa75-cortexa55-crypto"
|
||||
ARMPKGARCH_tune-cortexa75-cortexa55 = "cortexa75-cortexa55"
|
||||
ARMPKGARCH_tune-cortexa75-cortexa55-crypto = "cortexa75-cortexa55-crypto"
|
||||
TUNE_FEATURES_tune-cortexa75-cortexa55 = "aarch64 crc cortexa75-cortexa55"
|
||||
TUNE_FEATURES_tune-cortexa75-cortexa55-crypto = "aarch64 crc crypto cortexa75-cortexa55"
|
||||
PACKAGE_EXTRA_ARCHS_tune-cortexa75-cortexa55 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa75-cortexa55"
|
||||
PACKAGE_EXTRA_ARCHS_tune-cortexa75-cortexa55-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa75-cortexa55 cortexa75-cortexa55-crypto"
|
||||
BASE_LIB_tune-cortexa75-cortexa55 = "lib64"
|
||||
BASE_LIB_tune-cortexa75-cortexa55-crypto = "lib64"
|
||||
|
||||
13
meta-arm-bsp/conf/machine/include/tune-cortexa75.inc
Normal file
13
meta-arm-bsp/conf/machine/include/tune-cortexa75.inc
Normal file
@@ -0,0 +1,13 @@
|
||||
DEFAULTTUNE ?= "cortexa75"
|
||||
|
||||
TUNEVALID[cortexa75] = "Enable Cortex-A75 specific processor optimizations"
|
||||
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa75', ' -mcpu=cortex-a75', '', d)}"
|
||||
|
||||
require conf/machine/include/arm/arch-armv8-2a.inc
|
||||
|
||||
# Little Endian base configs
|
||||
AVAILTUNES += "cortexa75"
|
||||
ARMPKGARCH_tune-cortexa75 = "cortexa75"
|
||||
TUNE_FEATURES_tune-cortexa75 = "aarch64 cortexa75 crc crypto"
|
||||
PACKAGE_EXTRA_ARCHS_tune-cortexa75 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa75"
|
||||
BASE_LIB_tune-cortexa75 = "lib64"
|
||||
@@ -0,0 +1,20 @@
|
||||
DEFAULTTUNE ?= "cortexa76-cortexa55"
|
||||
|
||||
TUNEVALID[cortexa76-cortexa55] = "Enable big.LITTLE Cortex-A76.Cortex-A55 specific processor optimizations"
|
||||
TUNECONFLICTS[aarch64] = "armv4 armv5 armv6 armv7 armv7a"
|
||||
MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa76-cortexa55", "cortexa76-cortexa55:", "" ,d)}"
|
||||
TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa76-cortexa55", " -mcpu=cortex-a76.cortex-a55", "", d)}"
|
||||
|
||||
require conf/machine/include/arm/arch-armv8-2a.inc
|
||||
|
||||
# cortexa76.cortexa55 implies crc support
|
||||
AVAILTUNES += "cortexa76-cortexa55 cortexa76-cortexa55-crypto"
|
||||
ARMPKGARCH_tune-cortexa76-cortexa55 = "cortexa76-cortexa55"
|
||||
ARMPKGARCH_tune-cortexa76-cortexa55-crypto = "cortexa76-cortexa55-crypto"
|
||||
TUNE_FEATURES_tune-cortexa76-cortexa55 = "aarch64 crc cortexa76-cortexa55"
|
||||
TUNE_FEATURES_tune-cortexa76-cortexa55-crypto = "aarch64 crc crypto cortexa76-cortexa55"
|
||||
PACKAGE_EXTRA_ARCHS_tune-cortexa76-cortexa55 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa76-cortexa55"
|
||||
PACKAGE_EXTRA_ARCHS_tune-cortexa76-cortexa55-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa76-cortexa55 cortexa76-cortexa55-crypto"
|
||||
BASE_LIB_tune-cortexa76-cortexa55 = "lib64"
|
||||
BASE_LIB_tune-cortexa76-cortexa55-crypto = "lib64"
|
||||
|
||||
13
meta-arm-bsp/conf/machine/include/tune-cortexa76.inc
Normal file
13
meta-arm-bsp/conf/machine/include/tune-cortexa76.inc
Normal file
@@ -0,0 +1,13 @@
|
||||
DEFAULTTUNE ?= "cortexa76"
|
||||
|
||||
TUNEVALID[cortexa76] = "Enable Cortex-A76 specific processor optimizations"
|
||||
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa76', ' -mcpu=cortex-a76', '', d)}"
|
||||
|
||||
require conf/machine/include/arm/arch-armv8-2a.inc
|
||||
|
||||
# Little Endian base configs
|
||||
AVAILTUNES += "cortexa76"
|
||||
ARMPKGARCH_tune-cortexa76 = "cortexa76"
|
||||
TUNE_FEATURES_tune-cortexa76 = "aarch64 cortexa76 crc crypto"
|
||||
PACKAGE_EXTRA_ARCHS_tune-cortexa76 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa76"
|
||||
BASE_LIB_tune-cortexa76 = "lib64"
|
||||
13
meta-arm-bsp/conf/machine/include/tune-cortexa77.inc
Normal file
13
meta-arm-bsp/conf/machine/include/tune-cortexa77.inc
Normal file
@@ -0,0 +1,13 @@
|
||||
DEFAULTTUNE ?= "cortexa77"
|
||||
|
||||
TUNEVALID[cortexa77] = "Enable Cortex-A77 specific processor optimizations"
|
||||
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa77', ' -mcpu=cortex-a77', '', d)}"
|
||||
|
||||
require conf/machine/include/arm/arch-armv8-2a.inc
|
||||
|
||||
# Little Endian base configs
|
||||
AVAILTUNES += "cortexa77"
|
||||
ARMPKGARCH_tune-cortexa77 = "cortexa77"
|
||||
TUNE_FEATURES_tune-cortexa77 = "aarch64 cortexa77 crc crypto"
|
||||
PACKAGE_EXTRA_ARCHS_tune-cortexa77 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa77"
|
||||
BASE_LIB_tune-cortexa77 = "lib64"
|
||||
14
meta-arm-bsp/conf/machine/include/tune-neoversen1.inc
Normal file
14
meta-arm-bsp/conf/machine/include/tune-neoversen1.inc
Normal file
@@ -0,0 +1,14 @@
|
||||
DEFAULTTUNE ?= "neoversen1"
|
||||
|
||||
TUNEVALID[neoversen1] = "Enable Neoverse-N1 specific processor optimizations"
|
||||
# Note: Neoverse was called Ares, and GCC will accept "ares" in place of "neoverse-n1"
|
||||
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'neoversen1', ' -mcpu=neoverse-n1', '', d)}"
|
||||
|
||||
require conf/machine/include/arm/arch-armv8-2a.inc
|
||||
|
||||
# Little Endian base configs
|
||||
AVAILTUNES += "neoversen1"
|
||||
ARMPKGARCH_tune-neoversen1 = "neoversen1"
|
||||
TUNE_FEATURES_tune-neoversen1 = "aarch64 neoversen1 crc crypto"
|
||||
PACKAGE_EXTRA_ARCHS_tune-neoversen1 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} neoversen1"
|
||||
BASE_LIB_tune-neoversen1 = "lib64"
|
||||
Reference in New Issue
Block a user