From dcc00482797124d97aab1cfc254b1563e38de76b Mon Sep 17 00:00:00 2001 From: Archibald Elliott Date: Mon, 26 Sep 2022 16:26:30 +0100 Subject: [PATCH] [AArch64] Correct v9.x-a Features A change to D109517 during review stated it was disabling the crypto extensions by default in armv9a, but it also ended up removing two other non-crypto features: i8mm and bf16. This error was also made in D116158. This patch re-adds those two extensions to the feature bitmaps for the affected armv9a versions in the target parser. Differential Revision: https://reviews.llvm.org/D134647 --- llvm/include/llvm/Support/AArch64TargetParser.def | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/llvm/include/llvm/Support/AArch64TargetParser.def b/llvm/include/llvm/Support/AArch64TargetParser.def index d0a4551..3dae2ac 100644 --- a/llvm/include/llvm/Support/AArch64TargetParser.def +++ b/llvm/include/llvm/Support/AArch64TargetParser.def @@ -78,19 +78,19 @@ AARCH64_ARCH("armv9.1-a", ARMV9_1A, "9.1-A", "v9.1a", (AArch64::AEK_CRC | AArch64::AEK_FP | AArch64::AEK_SIMD | AArch64::AEK_RAS | AArch64::AEK_LSE | AArch64::AEK_RDM | AArch64::AEK_RCPC | AArch64::AEK_DOTPROD | - AArch64::AEK_SVE2)) + AArch64::AEK_BF16 | AArch64::AEK_I8MM | AArch64::AEK_SVE2)) AARCH64_ARCH("armv9.2-a", ARMV9_2A, "9.2-A", "v9.2a", ARMBuildAttrs::CPUArch::v8_A, FK_NEON_FP_ARMV8, (AArch64::AEK_CRC | AArch64::AEK_FP | AArch64::AEK_SIMD | AArch64::AEK_RAS | AArch64::AEK_LSE | AArch64::AEK_RDM | AArch64::AEK_RCPC | AArch64::AEK_DOTPROD | - AArch64::AEK_SVE2)) + AArch64::AEK_BF16 | AArch64::AEK_I8MM | AArch64::AEK_SVE2)) AARCH64_ARCH("armv9.3-a", ARMV9_3A, "9.3-A", "v9.3a", ARMBuildAttrs::CPUArch::v8_A, FK_CRYPTO_NEON_FP_ARMV8, (AArch64::AEK_CRC | AArch64::AEK_FP | AArch64::AEK_SIMD | AArch64::AEK_RAS | AArch64::AEK_LSE | AArch64::AEK_RDM | AArch64::AEK_RCPC | AArch64::AEK_DOTPROD | - AArch64::AEK_SVE2)) + AArch64::AEK_BF16 | AArch64::AEK_I8MM | AArch64::AEK_SVE2)) // For v8-R, we do not enable crypto and align with GCC that enables a more // minimal set of optional architecture extensions. AARCH64_ARCH("armv8-r", ARMV8R, "8-R", "v8r", -- 2.7.4