Index: llvm/trunk/include/llvm/Analysis/IteratedDominanceFrontier.h =================================================================== --- llvm/trunk/include/llvm/Analysis/IteratedDominanceFrontier.h +++ llvm/trunk/include/llvm/Analysis/IteratedDominanceFrontier.h @@ -34,7 +34,7 @@ class BasicBlock; template class DomTreeNodeBase; typedef DomTreeNodeBase DomTreeNode; -class DominatorTree; +template class DominatorTreeBase; /// \brief Determine the iterated dominance frontier, given a set of defining /// blocks, and optionally, a set of live-in blocks. @@ -47,7 +47,7 @@ class IDFCalculator { public: - IDFCalculator(DominatorTree &DT) : DT(DT), useLiveIn(false) {} + IDFCalculator(DominatorTreeBase &DT) : DT(DT), useLiveIn(false) {} /// \brief Give the IDF calculator the set of blocks in which the value is /// defined. This is equivalent to the set of starting blocks it should be @@ -85,7 +85,7 @@ void calculate(SmallVectorImpl &IDFBlocks); private: - DominatorTree &DT; + DominatorTreeBase &DT; bool useLiveIn; DenseMap DomLevels; const SmallPtrSetImpl *LiveInBlocks;