[llvm] [AMDGPU] V_SET_INACTIVE optimizations (PR #98864)
Carl Ritson via llvm-commits
llvm-commits at lists.llvm.org
Sat Sep 7 23:24:57 PDT 2024
================
@@ -555,16 +559,24 @@ char SIWholeQuadMode::scanInstructions(MachineFunction &MF,
GlobalFlags |= StateStrictWQM;
} else if (Opcode == AMDGPU::V_SET_INACTIVE_B32 ||
Opcode == AMDGPU::V_SET_INACTIVE_B64) {
- III.Disabled = StateStrict;
- MachineOperand &Inactive = MI.getOperand(2);
- if (Inactive.isReg()) {
- if (Inactive.isUndef()) {
- LowerToCopyInstrs.push_back(&MI);
- } else {
- markOperand(MI, Inactive, StateStrictWWM, Worklist);
+ // Ignore these if V_SET_INACTIVE which already has exec src register.
+ // These are generated by an earlier pass which has seperately ensured
+ // WWM and provided a mask of inactive lanes.
----------------
perlfu wrote:
This was added to facilitate `V_SET_INACTIVE` use in #105822.
https://github.com/llvm/llvm-project/pull/98864
More information about the llvm-commits
mailing list