[llvm] [AMDGPU][GlobalISel] Remove dependency on legal ruleset (PR #197371)
David Green via llvm-commits
llvm-commits at lists.llvm.org
Tue May 12 23:35:42 PDT 2026
https://github.com/davemgreen created https://github.com/llvm/llvm-project/pull/197371
This fills in always legal rules, to remove the dependency on the legacy ruleset.
>From 2ca2c35945e1a6aee05efe017cab2a016ec4d90b Mon Sep 17 00:00:00 2001
From: David Green <david.green at arm.com>
Date: Wed, 13 May 2026 07:33:48 +0100
Subject: [PATCH] [AMDGPU][GlobalISel] Remove dependency on legal ruleset
This fills in always legal rules, to remove the dependency on the legacy
ruleset.
---
llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp b/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
index 2b08c09ea9563..46fef11c7549d 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
@@ -734,6 +734,8 @@ AMDGPULegalizerInfo::AMDGPULegalizerInfo(const GCNSubtarget &ST_,
const LLT MinScalarFPTy = ST.has16BitInsts() ? S16 : S32;
+ getActionDefinitionsBuilder(G_BR).alwaysLegal();
+
// s1 for VCC branches, s32 for SCC branches.
getActionDefinitionsBuilder(G_BRCOND).legalFor({S1, S32});
@@ -2230,6 +2232,11 @@ AMDGPULegalizerInfo::AMDGPULegalizerInfo(const GCNSubtarget &ST_,
.scalarize(1)
.lower();
+ getActionDefinitionsBuilder({G_INTRINSIC, G_INTRINSIC_W_SIDE_EFFECTS,
+ G_INTRINSIC_CONVERGENT,
+ G_INTRINSIC_CONVERGENT_W_SIDE_EFFECTS})
+ .alwaysLegal();
+
getLegacyLegalizerInfo().computeTables();
verify(*ST.getInstrInfo());
}
More information about the llvm-commits
mailing list