[llvm] [AMDGPU] Clear no convergence flag on onperand folding. NFCI (PR #179438)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Feb 3 03:27:57 PST 2026
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-backend-amdgpu
Author: Stanislav Mekhanoshin (rampitec)
<details>
<summary>Changes</summary>
Clear the flag. It fails verification if set, only convergent
operations may have NoConvergent flag. NFCI as it is now because
it just does not happen.
---
Full diff: https://github.com/llvm/llvm-project/pull/179438.diff
1 Files Affected:
- (modified) llvm/lib/Target/AMDGPU/SIFoldOperands.cpp (+2)
``````````diff
diff --git a/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp b/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
index 3f72b65e8148a..a2fe31bd849c3 100644
--- a/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
+++ b/llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
@@ -1445,6 +1445,7 @@ void SIFoldOperandsImpl::foldOperand(
return;
UseMI->setDesc(TII->get(AMDGPU::S_MOV_B32));
+ UseMI->clearFlag(MachineInstr::NoConvergent);
if (OpToFold.isImm()) {
UseMI->getOperand(1).ChangeToImmediate(
@@ -1476,6 +1477,7 @@ void SIFoldOperandsImpl::foldOperand(
UseMI->getOperand(1).setSubReg(OpToFold.getSubReg());
UseMI->getOperand(1).setIsKill(false);
UseMI->removeOperand(2); // Remove exec read (or src1 for readlane)
+ UseMI->clearFlag(MachineInstr::NoConvergent);
return;
}
}
``````````
</details>
https://github.com/llvm/llvm-project/pull/179438
More information about the llvm-commits
mailing list