[llvm] [AMDGPU] SelectionDAG divergence tracking should take into account Target divergency. (PR #144947)
Jay Foad via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 27 00:24:40 PDT 2025
================
@@ -13600,16 +13606,20 @@ void SelectionDAG::createOperands(SDNode *Node, ArrayRef<SDValue> Vals) {
Ops[I].setInitial(Vals[I]);
EVT VT = Ops[I].getValueType();
+ // Take care of the Node's operands iif target has divergence
// Skip Chain. It does not carry divergence.
- if (VT != MVT::Other &&
+ if (DivergentTarget && VT != MVT::Other &&
----------------
jayfoad wrote:
You don't really need to check `DivergentTarget` here since you also check it before setting `Node->SDNodeBits.IsDivergent`.
https://github.com/llvm/llvm-project/pull/144947
More information about the llvm-commits
mailing list