[llvm-branch-commits] [llvm] AMDGPU/GlobalISel: RBSelect (PR #112863)
Matt Arsenault via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Sat Oct 19 07:45:40 PDT 2024
================
@@ -69,3 +72,38 @@ AMDGPU::getBaseWithConstantOffset(MachineRegisterInfo &MRI, Register Reg,
return std::pair(Reg, 0);
}
+
+IntrinsicLaneMaskAnalyzer::IntrinsicLaneMaskAnalyzer(MachineFunction &MF)
+ : MRI(MF.getRegInfo()) {
+ initLaneMaskIntrinsics(MF);
+}
+
+bool IntrinsicLaneMaskAnalyzer::isS32S64LaneMask(Register Reg) {
+ return S32S64LaneMask.contains(Reg);
+}
+
+void IntrinsicLaneMaskAnalyzer::initLaneMaskIntrinsics(MachineFunction &MF) {
+ for (auto &MBB : MF) {
+ for (auto &MI : MBB) {
+ if (MI.getOpcode() == AMDGPU::G_INTRINSIC &&
+ MI.getOperand(MI.getNumExplicitDefs()).getIntrinsicID() ==
+ Intrinsic::amdgcn_if_break) {
----------------
arsenm wrote:
`cast<GIntrinsic>(MI).getIntrinsicID() == Intrinsic::amdgcn_if_break`
https://github.com/llvm/llvm-project/pull/112863
More information about the llvm-branch-commits
mailing list