[llvm] [NFC][AMDGPU] use DAG.UpdateNodeOperands update chain (PR #166396)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 4 08:28:57 PST 2025
https://github.com/actinks created https://github.com/llvm/llvm-project/pull/166396
None
>From 5f1e7083dffc73d6c6c545cf77eb699e6caeee3d Mon Sep 17 00:00:00 2001
From: actink <actink at 163.com>
Date: Wed, 5 Nov 2025 00:26:53 +0800
Subject: [PATCH] [NFC][AMDGPU] use DAG.UpdateNodeOperands update chain
---
llvm/lib/Target/AMDGPU/R600ISelLowering.cpp | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/llvm/lib/Target/AMDGPU/R600ISelLowering.cpp b/llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
index 2aa54c920a046..31eca049fd149 100644
--- a/llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
+++ b/llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
@@ -1129,12 +1129,9 @@ SDValue R600TargetLowering::LowerSTORE(SDValue Op, SelectionDAG &DAG) const {
if ((AS == AMDGPUAS::PRIVATE_ADDRESS) && TruncatingStore) {
// Add an extra level of chain to isolate this vector
SDValue NewChain = DAG.getNode(AMDGPUISD::DUMMY_CHAIN, DL, MVT::Other, Chain);
- // TODO: can the chain be replaced without creating a new store?
- SDValue NewStore = DAG.getTruncStore(
- NewChain, DL, Value, Ptr, StoreNode->getPointerInfo(), MemVT,
- StoreNode->getAlign(), StoreNode->getMemOperand()->getFlags(),
- StoreNode->getAAInfo());
- StoreNode = cast<StoreSDNode>(NewStore);
+ SmallVector<SDValue, 4> NewOps(StoreNode->ops());
+ NewOps[0] = NewChain;
+ StoreNode = cast<StoreSDNode>(DAG.UpdateNodeOperands(StoreNode, NewOps));
}
return scalarizeVectorStore(StoreNode, DAG);
More information about the llvm-commits
mailing list