[llvm] [AArch64] Enable cmp + bcc fusion and cmp + csel fusion for Neoverse V2 (PR #94309)
Mingming Liu via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 3 22:29:12 PDT 2024
https://github.com/minglotus-6 updated https://github.com/llvm/llvm-project/pull/94309
>From 161a2cca652564c2d1b32df2f4e71e331798fb91 Mon Sep 17 00:00:00 2001
From: mingmingl <mingmingl at google.com>
Date: Mon, 3 Jun 2024 21:43:20 -0700
Subject: [PATCH 1/2] [Neoverse-V2]Enable cmp + bcc fusion and cmp + csel
fusion for Neoverse V2
---
llvm/lib/Target/AArch64/AArch64Processors.td | 2 ++
1 file changed, 2 insertions(+)
diff --git a/llvm/lib/Target/AArch64/AArch64Processors.td b/llvm/lib/Target/AArch64/AArch64Processors.td
index f2286ae17dba5..c16019357be4e 100644
--- a/llvm/lib/Target/AArch64/AArch64Processors.td
+++ b/llvm/lib/Target/AArch64/AArch64Processors.td
@@ -485,6 +485,8 @@ def TuneNeoverseV2 : SubtargetFeature<"neoversev2", "ARMProcFamily", "NeoverseV2
"Neoverse V2 ARM processors", [
FeatureFuseAES,
FeatureFuseAdrpAdd,
+ FeatureCmpBccFusion,
+ FeatureFuseCCSelect,
FeatureALULSLFast,
FeaturePostRAScheduler,
FeatureEnableSelectOptimize,
>From 77fc8bfb8d70bb75338aef7f86469423cff387aa Mon Sep 17 00:00:00 2001
From: mingmingl <mingmingl at google.com>
Date: Mon, 3 Jun 2024 22:28:55 -0700
Subject: [PATCH 2/2] Undo cmp+bcc fusion as pr90608 tracks cmp+bcc with
benchmarking data
---
llvm/lib/Target/AArch64/AArch64Processors.td | 1 -
1 file changed, 1 deletion(-)
diff --git a/llvm/lib/Target/AArch64/AArch64Processors.td b/llvm/lib/Target/AArch64/AArch64Processors.td
index c16019357be4e..3fd852eb45dd4 100644
--- a/llvm/lib/Target/AArch64/AArch64Processors.td
+++ b/llvm/lib/Target/AArch64/AArch64Processors.td
@@ -485,7 +485,6 @@ def TuneNeoverseV2 : SubtargetFeature<"neoversev2", "ARMProcFamily", "NeoverseV2
"Neoverse V2 ARM processors", [
FeatureFuseAES,
FeatureFuseAdrpAdd,
- FeatureCmpBccFusion,
FeatureFuseCCSelect,
FeatureALULSLFast,
FeaturePostRAScheduler,
More information about the llvm-commits
mailing list