Add support for walking type graphs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@418 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2001-09-07 16:17:24 +00:00
parent 2cb0722c00
commit 20b0010030

View File

@ -73,6 +73,7 @@ struct BasicBlockGraph;
struct ConstBasicBlockGraph;
struct InverseBasicBlockGraph;
struct ConstInverseBasicBlockGraph;
struct TypeGraph;
// Forward declare iterator class template...
template<class GraphInfo> class DFIterator;
@ -104,6 +105,15 @@ inline idf_iterator idf_end ( BasicBlock *BB);
inline idf_const_iterator idf_end (const BasicBlock *BB);
// Depth First Iterator Definitions for Types. This lets you iterator over
// (possibly cyclic) type graphs in dfo
//
typedef DFIterator<TypeGraph> tdf_iterator;
inline tdf_iterator tdf_begin(const Type *T, bool Reverse = false);
inline tdf_iterator tdf_end (const Type *T);
//===--------------------------------------------------------------------===//
// Post Order CFG iterator code
//===--------------------------------------------------------------------===//