Remove ReversePostOrderTraversal declaration
authorChris Lattner <sabre@nondot.org>
Fri, 7 Sep 2001 21:02:50 +0000 (21:02 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 7 Sep 2001 21:02:50 +0000 (21:02 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@481 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/CFGdecls.h

index b59a1d25367e5ee9054732c1083795adbbea2ed4..fa6d08f526ae45fbdb792f420c44d46fe56d9b96 100644 (file)
@@ -138,36 +138,6 @@ inline po_const_iterator po_begin(const BasicBlock *BB);
 inline po_iterator       po_end  (      BasicBlock *BB);
 inline po_const_iterator po_end  (const BasicBlock *BB);
 
-
-//===--------------------------------------------------------------------===//
-// Reverse Post Order CFG iterator code
-//===--------------------------------------------------------------------===//
-// 
-// This is used to visit basic blocks in a method in reverse post order.  This
-// class is awkward to use because I don't know a good incremental algorithm to
-// computer RPO from a graph.  Because of this, the construction of the 
-// ReversePostOrderTraversal object is expensive (it must walk the entire graph
-// with a postorder iterator to build the data structures).  The moral of this
-// story is: Don't create more ReversePostOrderTraversal classes than neccesary.
-//
-// This class should be used like this:
-// {
-//   cfg::ReversePostOrderTraversal RPOT(MethodPtr);   // Expensive to create
-//   for (cfg::rpo_iterator I = RPOT.begin(); I != RPOT.end(); ++I) {
-//      ...
-//   }
-//   for (cfg::rpo_iterator I = RPOT.begin(); I != RPOT.end(); ++I) {
-//      ...
-//   }
-// }
-//
-
-//typedef reverse_iterator<vector<BasicBlock*>::const_iterator> 
-// rpo_const_iterator;
-typedef reverse_iterator<vector<BasicBlock*>::iterator> rpo_iterator;
-
-class ReversePostOrderTraversal;
-
 }    // End namespace cfg
 
 #endif