[llvm-commits] CVS: llvm/utils/TableGen/DAGISelEmitter.cpp

Evan Cheng evan.cheng at apple.com
Thu Oct 12 13:35:34 PDT 2006



Changes in directory llvm/utils/TableGen:

DAGISelEmitter.cpp updated: 1.268 -> 1.269
---
Log message:

Use RemoveDeadNode to kill dead node.

---
Diffs of the changes:  (+4 -12)

 DAGISelEmitter.cpp |   16 ++++------------
 1 files changed, 4 insertions(+), 12 deletions(-)


Index: llvm/utils/TableGen/DAGISelEmitter.cpp
diff -u llvm/utils/TableGen/DAGISelEmitter.cpp:1.268 llvm/utils/TableGen/DAGISelEmitter.cpp:1.269
--- llvm/utils/TableGen/DAGISelEmitter.cpp:1.268	Wed Oct 11 21:08:53 2006
+++ llvm/utils/TableGen/DAGISelEmitter.cpp	Thu Oct 12 15:35:19 2006
@@ -3741,16 +3741,6 @@
   OS << "  RemoveKilled();\n";
   OS << "}\n\n";
 
-  OS << "void DeleteNode(SDNode *N) {\n";
-  OS << "  CurDAG->DeleteNode(N);\n";
-  OS << "  for (SDNode::op_iterator I = N->op_begin(), E = N->op_end(); "
-     << "I != E; ++I) {\n";
-  OS << "    SDNode *Operand = I->Val;\n";
-  OS << "    if (Operand->use_empty())\n";
-  OS << "      DeleteNode(Operand);\n";
-  OS << "  }\n";
-  OS << "}\n";
-
   OS << "// SelectRoot - Top level entry to DAG isel.\n";
   OS << "SDOperand SelectRoot(SDOperand Root) {\n";
   OS << "  SelectRootInit();\n";
@@ -3774,8 +3764,10 @@
   OS << "      if (ResNode != Node) {\n";
   OS << "        if (ResNode)\n";
   OS << "          ReplaceUses(Node, ResNode);\n";
-  OS << "        if (Node->use_empty()) // Don't delete EntryToken, etc.\n";
-  OS << "          DeleteNode(Node);\n";
+  OS << "        if (Node->use_empty()) { // Don't delete EntryToken, etc.\n";
+  OS << "          CurDAG->RemoveDeadNode(Node, ISelKilled);\n";
+  OS << "          RemoveKilled();\n";
+  OS << "        }\n";
   OS << "      }\n";
   OS << "    }\n";
   OS << "  }\n";






More information about the llvm-commits mailing list