[llvm-branch-commits] [llvm] release/22.x: [AArch64][llvm] Update Armv9.7-A dependencies (#185034) (PR #185071)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Fri Mar 6 10:10:12 PST 2026
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-backend-aarch64
Author: None (llvmbot)
<details>
<summary>Changes</summary>
Backport cba914cec
Requested by: @<!-- -->jthackray
---
Full diff: https://github.com/llvm/llvm-project/pull/185071.diff
2 Files Affected:
- (modified) llvm/lib/Target/AArch64/AArch64Features.td (+4-3)
- (modified) llvm/unittests/TargetParser/TargetParserTest.cpp (+3)
``````````diff
diff --git a/llvm/lib/Target/AArch64/AArch64Features.td b/llvm/lib/Target/AArch64/AArch64Features.td
index 6e2153b2244f8..4beec8c91067a 100644
--- a/llvm/lib/Target/AArch64/AArch64Features.td
+++ b/llvm/lib/Target/AArch64/AArch64Features.td
@@ -614,7 +614,7 @@ def FeatureSVE_B16MM : ExtensionWithMArch<"sve-b16mm", "SVE_B16MM", "FEAT_SVE_B1
"Enable Armv9.7-A SVE non-widening BFloat16 matrix multiply-accumulate", [FeatureSVE]>;
def FeatureF16MM : ExtensionWithMArch<"f16mm", "F16MM", "FEAT_F16MM",
- "Enable Armv9.7-A non-widening half-precision matrix multiply-accumulate", [FeatureFullFP16]>;
+ "Enable Armv9.7-A non-widening half-precision matrix multiply-accumulate", [FeatureNEON, FeatureFullFP16]>;
def FeatureF16F32DOT : ExtensionWithMArch<"f16f32dot", "F16F32DOT", "FEAT_F16F32DOT",
"Enable Armv9.7-A Advanced SIMD half-precision dot product accumulate to single-precision", [FeatureNEON, FeatureFullFP16]>;
@@ -1014,8 +1014,9 @@ def HasV9_6aOps : Architecture64<9, 6, "a", "v9.6a",
!listconcat(HasV9_5aOps.DefaultExts, [FeatureCMPBR,
FeatureLSUI, FeatureOCCMO])>;
def HasV9_7aOps : Architecture64<9, 7, "a", "v9.7a",
- [HasV9_6aOps, FeatureSVE2p3, FeatureFPRCVT],
- !listconcat(HasV9_6aOps.DefaultExts, [FeatureSVE2p3, FeatureFPRCVT])>;
+ [HasV9_6aOps, FeatureSVE2p3, FeatureFPRCVT, FeatureF16F32DOT],
+ !listconcat(HasV9_6aOps.DefaultExts, [FeatureSVE2p3, FeatureFPRCVT,
+ FeatureF16F32DOT])>;
def HasV8_0rOps : Architecture64<8, 0, "r", "v8r",
[ //v8.1
FeatureCRC, FeaturePAN, FeatureLSE, FeatureCONTEXTIDREL2,
diff --git a/llvm/unittests/TargetParser/TargetParserTest.cpp b/llvm/unittests/TargetParser/TargetParserTest.cpp
index 7b3b196073aa7..7ad26a54d6dda 100644
--- a/llvm/unittests/TargetParser/TargetParserTest.cpp
+++ b/llvm/unittests/TargetParser/TargetParserTest.cpp
@@ -1913,6 +1913,7 @@ AArch64ExtensionDependenciesBaseArchTestParams
{"v8.1a", "crc", "fp-armv8", "lse", "rdm", "neon"},
{}},
{AArch64::ARMV9_5A, {}, {"v9.5a", "mops", "cpa"}, {}},
+ {AArch64::ARMV9_7A, {}, {"v9.7a", "f16f32dot"}, {}},
// Positive modifiers
{AArch64::ARMV8A, {"fp16"}, {"fullfp16"}, {}},
@@ -2028,6 +2029,8 @@ AArch64ExtensionDependenciesBaseArchTestParams
{AArch64::ARMV8A, {"sve", "nofp16"}, {}, {"fullfp16", "sve"}},
{AArch64::ARMV9_7A, {"nofp16", "f16mm"}, {"fullfp16", "f16mm"}, {}},
{AArch64::ARMV9_7A, {"f16mm", "nofp16"}, {}, {"fullfp16", "f16mm"}},
+ {AArch64::ARMV9_7A, {"nosimd", "f16mm"}, {"neon", "f16mm"}, {}},
+ {AArch64::ARMV9_7A, {"f16mm", "nosimd"}, {}, {"neon", "f16mm"}},
{AArch64::ARMV9_7A,
{"nofp16", "f16f32mm"},
{"fullfp16", "f16f32mm"},
``````````
</details>
https://github.com/llvm/llvm-project/pull/185071
More information about the llvm-branch-commits
mailing list