From e71f54c6efe8c2fe5054eaa6c202bdc40ffa6016 Mon Sep 17 00:00:00 2001 From: Jon Mason Date: Mon, 5 Feb 2024 13:40:52 +0100 Subject: tunes/sve: Add support for sve2 instructions Add support for SVE2 and add to 8-2a, as it can be used there. Also, clean up the comments (From OE-Core rev: 683443d57cb18b3b54245b1a09b6e5d2bae4f5d0) Signed-off-by: Jon Mason Signed-off-by: Richard Purdie --- meta/conf/machine/include/arm/arch-armv8-2a.inc | 1 + meta/conf/machine/include/arm/arch-armv8r.inc | 1 + meta/conf/machine/include/arm/feature-arm-sve.inc | 9 ++++++--- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/meta/conf/machine/include/arm/arch-armv8-2a.inc b/meta/conf/machine/include/arm/arch-armv8-2a.inc index 95368b0af7..2b5fae1406 100644 --- a/meta/conf/machine/include/arm/arch-armv8-2a.inc +++ b/meta/conf/machine/include/arm/arch-armv8-2a.inc @@ -6,6 +6,7 @@ TUNE_CCARGS_MARCH .= "${@bb.utils.contains('TUNE_FEATURES', 'armv8-2a', ' -march MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv8-2a', 'armv8-2a:', '', d)}" require conf/machine/include/arm/arch-armv8a.inc +require conf/machine/include/arm/feature-arm-sve.inc # Little Endian base configs AVAILTUNES += "armv8-2a armv8-2a-crypto" diff --git a/meta/conf/machine/include/arm/arch-armv8r.inc b/meta/conf/machine/include/arm/arch-armv8r.inc index 0dcfd34c1a..2fea8d2517 100644 --- a/meta/conf/machine/include/arm/arch-armv8r.inc +++ b/meta/conf/machine/include/arm/arch-armv8r.inc @@ -10,6 +10,7 @@ MACHINEOVERRIDES =. "${@bb.utils.contains('TUNE_FEATURES', 'armv8r', 'armv8r:', require conf/machine/include/arm/arch-arm64.inc require conf/machine/include/arm/feature-arm-crc.inc require conf/machine/include/arm/feature-arm-crypto.inc +require conf/machine/include/arm/feature-arm-sve.inc # All ARMv8 has floating point hardware built in. Null it here to avoid any confusion for 32bit. TARGET_FPU_32 = "" diff --git a/meta/conf/machine/include/arm/feature-arm-sve.inc b/meta/conf/machine/include/arm/feature-arm-sve.inc index 279bf8c486..bdae3d8fc3 100644 --- a/meta/conf/machine/include/arm/feature-arm-sve.inc +++ b/meta/conf/machine/include/arm/feature-arm-sve.inc @@ -1,5 +1,8 @@ -# Scalable Vector Extension (SVE) for: -# armv8.2-a, armv8.3-a, armv8.4-a, armv8.5-a, armv8.6-a, armv8-r, armv9a +# Scalable Vector Extension (SVE) for Armv8-A and R +# Enabled by default for Armv9 -TUNEVALID[sve] = "Enable SVE instructions for ARMv8 and ARMv9" +TUNEVALID[sve] = "Enable SVE instructions for ARMv8" TUNE_CCARGS_MARCH_OPTS .= "${@bb.utils.contains('TUNE_FEATURES', 'sve', '+sve', '', d)}" + +TUNEVALID[sve2] = "Enable SVE2 instructions for ARMv8" +TUNE_CCARGS_MARCH_OPTS .= "${@bb.utils.contains('TUNE_FEATURES', 'sve2', '+sve2', '', d)}" -- cgit v1.2.3-54-g00ecf