Update some comments to reflect the new code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58759 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman 2008-11-05 17:13:57 +00:00
parent 617303ac71
commit 695ea6e57e

View File

@ -50,7 +50,10 @@ public:
explicit ISelUpdater(SelectionDAG::allnodes_iterator &isp) explicit ISelUpdater(SelectionDAG::allnodes_iterator &isp)
: ISelPosition(isp) {} : ISelPosition(isp) {}
/// NodeDeleted - remove node from the selection queue. /// NodeDeleted - Handle nodes deleted from the graph. If the
/// node being deleted is the current ISelPosition node, update
/// ISelPosition.
///
virtual void NodeDeleted(SDNode *N, SDNode *E) { virtual void NodeDeleted(SDNode *N, SDNode *E) {
if (ISelPosition == SelectionDAG::allnodes_iterator(N)) if (ISelPosition == SelectionDAG::allnodes_iterator(N))
++ISelPosition; ++ISelPosition;
@ -100,8 +103,10 @@ void SelectRoot(SelectionDAG &DAG) {
HandleSDNode Dummy(CurDAG->getRoot()); HandleSDNode Dummy(CurDAG->getRoot());
ISelPosition = next(SelectionDAG::allnodes_iterator(CurDAG->getRoot().getNode())); ISelPosition = next(SelectionDAG::allnodes_iterator(CurDAG->getRoot().getNode()));
// Select pending nodes from the instruction selection queue // The AllNodes list is now topological-sorted. Visit the
// until no more nodes are left for selection. // nodes by starting at the end of the list (the root of the
// graph) and preceding back toward the beginning (the entry
// node).
while (ISelPosition != CurDAG->allnodes_begin()) { while (ISelPosition != CurDAG->allnodes_begin()) {
SDNode *Node = --ISelPosition; SDNode *Node = --ISelPosition;
#if 0 #if 0