From 20b00100302dae95c440d1016f699eb95874002a Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 7 Sep 2001 16:17:24 +0000 Subject: [PATCH] Add support for walking type graphs git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@418 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CFGdecls.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/include/llvm/CFGdecls.h b/include/llvm/CFGdecls.h index 8d4152fea0a..b59a1d25367 100644 --- a/include/llvm/CFGdecls.h +++ b/include/llvm/CFGdecls.h @@ -73,6 +73,7 @@ struct BasicBlockGraph; struct ConstBasicBlockGraph; struct InverseBasicBlockGraph; struct ConstInverseBasicBlockGraph; +struct TypeGraph; // Forward declare iterator class template... template 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 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 //===--------------------------------------------------------------------===// -- 2.34.1