Move DFSPass back down into DominatorTree. I need to figure out what the difference is between it

and the PostDomTree version first.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42250 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Owen Anderson
2007-09-23 22:16:38 +00:00
parent 96d514d21a
commit eefb31094f
2 changed files with 3 additions and 2 deletions

View File

@@ -129,7 +129,6 @@ protected:
// Info - Collection of information used during the computation of idoms. // Info - Collection of information used during the computation of idoms.
DenseMap<BasicBlock*, InfoRec> Info; DenseMap<BasicBlock*, InfoRec> Info;
unsigned DFSPass(BasicBlock *V, unsigned N);
public: public:
DominatorTreeBase(intptr_t ID, bool isPostDom) DominatorTreeBase(intptr_t ID, bool isPostDom)
@@ -319,6 +318,8 @@ private:
friend BasicBlock *DTEval(DominatorTree& DT, BasicBlock *v); friend BasicBlock *DTEval(DominatorTree& DT, BasicBlock *v);
friend void DTLink(DominatorTree& DT, BasicBlock *V, friend void DTLink(DominatorTree& DT, BasicBlock *V,
BasicBlock *W, InfoRec &WInfo); BasicBlock *W, InfoRec &WInfo);
unsigned DFSPass(BasicBlock *V, unsigned N);
}; };
//===------------------------------------- //===-------------------------------------

View File

@@ -53,7 +53,7 @@ char DominatorTree::ID = 0;
static RegisterPass<DominatorTree> static RegisterPass<DominatorTree>
E("domtree", "Dominator Tree Construction", true); E("domtree", "Dominator Tree Construction", true);
unsigned DominatorTreeBase::DFSPass(BasicBlock *V, unsigned N) { unsigned DominatorTree::DFSPass(BasicBlock *V, unsigned N) {
// This is more understandable as a recursive algorithm, but we can't use the // This is more understandable as a recursive algorithm, but we can't use the
// recursive algorithm due to stack depth issues. Keep it here for // recursive algorithm due to stack depth issues. Keep it here for
// documentation purposes. // documentation purposes.