[llvm-commits] CVS: llvm/include/llvm/CodeGen/SelectionDAG.h

Evan Cheng evan.cheng at apple.com
Thu Oct 12 13:33:28 PDT 2006



Changes in directory llvm/include/llvm/CodeGen:

SelectionDAG.h updated: 1.134 -> 1.135
---
Log message:

Add RemoveDeadNode to remove a dead node and its (potentially) dead operands.

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

 SelectionDAG.h |   13 +++++++++----
 1 files changed, 9 insertions(+), 4 deletions(-)


Index: llvm/include/llvm/CodeGen/SelectionDAG.h
diff -u llvm/include/llvm/CodeGen/SelectionDAG.h:1.134 llvm/include/llvm/CodeGen/SelectionDAG.h:1.135
--- llvm/include/llvm/CodeGen/SelectionDAG.h:1.134	Mon Oct  9 15:55:20 2006
+++ llvm/include/llvm/CodeGen/SelectionDAG.h	Thu Oct 12 15:33:14 2006
@@ -129,7 +129,16 @@
   /// RemoveDeadNodes - This method deletes all unreachable nodes in the
   /// SelectionDAG.
   void RemoveDeadNodes();
+
+  /// RemoveDeadNode - Remove the specified node from the system. If any of its
+  /// operands then becomes dead, remove them as well. The vector Deleted is
+  /// populated with nodes that are deleted.
+  void RemoveDeadNode(SDNode *N, std::vector<SDNode*> &Deleted);
   
+  /// DeleteNode - Remove the specified node from the system.  This node must
+  /// have no referrers.
+  void DeleteNode(SDNode *N);
+
   /// getVTList - Return an SDVTList that represents the list of values
   /// specified.
   SDVTList getVTList(MVT::ValueType VT);
@@ -407,10 +416,6 @@
   void ReplaceAllUsesOfValueWith(SDOperand From, SDOperand To,
                                  std::vector<SDNode*> &Deleted);
 
-  /// DeleteNode - Remove the specified node from the system.  This node must
-  /// have no referrers.
-  void DeleteNode(SDNode *N);
-
   /// AssignNodeIds - Assign a unique node id for each node in the DAG based on
   /// their allnodes order. It returns the maximum id.
   unsigned AssignNodeIds();






More information about the llvm-commits mailing list