[llvm] [AMDGPU] V_SET_INACTIVE optimizations (PR #98864)
Jay Foad via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 3 03:20:17 PDT 2024
================
@@ -1058,6 +1071,20 @@ void SIWholeQuadMode::lowerBlock(MachineBasicBlock &MBB) {
case AMDGPU::SI_KILL_F32_COND_IMM_TERMINATOR:
SplitPoint = lowerKillF32(MBB, MI);
break;
+ case AMDGPU::ENTER_STRICT_WWM:
+ ActiveLanesReg = MI.getOperand(0).getReg();
+ break;
+ case AMDGPU::EXIT_STRICT_WWM:
+ ActiveLanesReg = 0;
+ break;
+ case AMDGPU::V_SET_INACTIVE_B32:
+ case AMDGPU::V_SET_INACTIVE_B64:
+ if (ActiveLanesReg) {
+ MI.addOperand(*MBB.getParent(),
+ MachineOperand::CreateReg(ActiveLanesReg, false, true));
+ } else
+ assert(State == StateExact || State == StateWQM);
----------------
jayfoad wrote:
Nit: braces around the else part, since the if part has them.
https://github.com/llvm/llvm-project/pull/98864
More information about the llvm-commits
mailing list