[llvm] 474a8ee - [DAG] Use recursivelyDeleteUnusedNodes in PromoteLoad

Amaury Séchet via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 28 05:54:57 PDT 2022


Author: Amaury Séchet
Date: 2022-07-28T12:54:52Z
New Revision: 474a8ee03d08c93828a74a7c4026c80ec64dbf54

URL: https://github.com/llvm/llvm-project/commit/474a8ee03d08c93828a74a7c4026c80ec64dbf54
DIFF: https://github.com/llvm/llvm-project/commit/474a8ee03d08c93828a74a7c4026c80ec64dbf54.diff

LOG: [DAG] Use recursivelyDeleteUnusedNodes in PromoteLoad

It simplifies the code overall and removes the need for manual bookkeeping.

Reviewed By: RKSimon

Differential Revision: https://reviews.llvm.org/D130447

Added: 
    

Modified: 
    llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
index 12398130447e..be6a1785ca14 100644
--- a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
@@ -1523,13 +1523,15 @@ bool DAGCombiner::PromoteLoad(SDValue Op) {
 
     LLVM_DEBUG(dbgs() << "\nPromoting "; N->dump(&DAG); dbgs() << "\nTo: ";
                Result.dump(&DAG); dbgs() << '\n');
-    WorklistRemover DeadNodes(*this);
+
     DAG.ReplaceAllUsesOfValueWith(SDValue(N, 0), Result);
     DAG.ReplaceAllUsesOfValueWith(SDValue(N, 1), NewLD.getValue(1));
-    deleteAndRecombine(N);
+
     AddToWorklist(Result.getNode());
+    recursivelyDeleteUnusedNodes(N);
     return true;
   }
+
   return false;
 }
 


        


More information about the llvm-commits mailing list