[llvm] [AMDGPU][GlobalISel] Remove dependency on legal ruleset (PR #197371)
via llvm-commits
llvm-commits at lists.llvm.org
Tue May 12 23:36:18 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-backend-amdgpu
Author: David Green (davemgreen)
<details>
<summary>Changes</summary>
This fills in always legal rules, to remove the dependency on the legacy ruleset.
---
Full diff: https://github.com/llvm/llvm-project/pull/197371.diff
1 Files Affected:
- (modified) llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp (+7)
``````````diff
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());
}
``````````
</details>
https://github.com/llvm/llvm-project/pull/197371
More information about the llvm-commits
mailing list