From c6dfaa0e836c1b63366b1010157538d9c346a8b3 Mon Sep 17 00:00:00 2001 From: Nirav Dave Date: Wed, 27 Mar 2019 19:54:41 +0000 Subject: Revert r356996 "[DAG] Avoid smart constructor-based dangling nodes." This patch appears to trigger very large compile time increases in halide builds. llvm-svn: 357116 --- llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp | 12 ------------ llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp | 3 --- 2 files changed, 15 deletions(-) (limited to 'llvm/lib/CodeGen/SelectionDAG') diff --git a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp index 4f6aa01cbc5..0b19b320f78 100644 --- a/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp @@ -643,16 +643,6 @@ public: } }; -class WorklistInserter : public SelectionDAG::DAGUpdateListener { - DAGCombiner &DC; - -public: - explicit WorklistInserter(DAGCombiner &dc) - : SelectionDAG::DAGUpdateListener(dc.getDAG()), DC(dc) {} - - void NodeInserted(SDNode *N) override { DC.AddToWorklist(N); } -}; - } // end anonymous namespace //===----------------------------------------------------------------------===// @@ -1405,8 +1395,6 @@ void DAGCombiner::Run(CombineLevel AtLevel) { LegalOperations = Level >= AfterLegalizeVectorOps; LegalTypes = Level >= AfterLegalizeTypes; - WorklistInserter AddNodes(*this); - // Add all the dag nodes to the worklist. for (SDNode &Node : DAG.allnodes()) AddToWorklist(&Node); diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp index 9534704a7dd..6648d1b089e 100644 --- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp @@ -85,7 +85,6 @@ static SDVTList makeVTList(const EVT *VTs, unsigned NumVTs) { // Default null implementations of the callbacks. void SelectionDAG::DAGUpdateListener::NodeDeleted(SDNode*, SDNode*) {} void SelectionDAG::DAGUpdateListener::NodeUpdated(SDNode*) {} -void SelectionDAG::DAGUpdateListener::NodeInserted(SDNode *) {} void SelectionDAG::DAGNodeDeletedListener::anchor() {} @@ -834,8 +833,6 @@ void SelectionDAG::InsertNode(SDNode *N) { N->PersistentId = NextPersistentId++; VerifySDNode(N); #endif - for (DAGUpdateListener *DUL = UpdateListeners; DUL; DUL = DUL->Next) - DUL->NodeInserted(N); } /// RemoveNodeFromCSEMaps - Take the specified node out of the CSE map that -- cgit v1.2.3