From dbba0025eac5f366e2131c407905115deebda217 Mon Sep 17 00:00:00 2001 From: Owen Anderson Date: Fri, 28 Sep 2007 01:23:47 +0000 Subject: Have PostDomTree use the newly templated DFSPass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42427 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Analysis/DominatorInternals.h | 3 ++- include/llvm/Analysis/Dominators.h | 7 ++++--- include/llvm/Analysis/PostDominators.h | 3 --- 3 files changed, 6 insertions(+), 7 deletions(-) (limited to 'include') diff --git a/include/llvm/Analysis/DominatorInternals.h b/include/llvm/Analysis/DominatorInternals.h index 66ac2b7..cfd2d74 100644 --- a/include/llvm/Analysis/DominatorInternals.h +++ b/include/llvm/Analysis/DominatorInternals.h @@ -21,7 +21,8 @@ namespace llvm { template -unsigned DFSPass(DominatorTree& DT, typename GraphT::NodeType* V, unsigned N) { +unsigned DFSPass(DominatorTreeBase& DT, typename GraphT::NodeType* V, + unsigned N) { // 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 // documentation purposes. diff --git a/include/llvm/Analysis/Dominators.h b/include/llvm/Analysis/Dominators.h index e8ed92c..b14e619 100644 --- a/include/llvm/Analysis/Dominators.h +++ b/include/llvm/Analysis/Dominators.h @@ -280,6 +280,10 @@ protected: friend void Link(DominatorTreeBase& DT, BasicBlock *V, BasicBlock *W, InfoRec &WInfo); + template friend unsigned DFSPass(DominatorTreeBase& DT, + typename GraphT::NodeType* V, + unsigned N); + /// updateDFSNumbers - Assign In and Out numbers to the nodes while walking /// dominator tree in dfs order. void updateDFSNumbers(); @@ -319,9 +323,6 @@ public: private: friend void DTcalculate(DominatorTree& DT, Function& F); - - template friend - unsigned DFSPass(DominatorTree& DT, typename GraphT::NodeType* V, unsigned N); }; //===------------------------------------- diff --git a/include/llvm/Analysis/PostDominators.h b/include/llvm/Analysis/PostDominators.h index b2a37ff..d87f604 100644 --- a/include/llvm/Analysis/PostDominators.h +++ b/include/llvm/Analysis/PostDominators.h @@ -37,10 +37,7 @@ struct PostDominatorTree : public DominatorTreeBase { AU.setPreservesAll(); } private: - unsigned DFSPass(BasicBlock *V, unsigned N); friend void PDTcalculate(PostDominatorTree& PDT, Function &F); - friend void PDTLink(PostDominatorTree& PDT,BasicBlock *V, - BasicBlock *W, InfoRec &WInfo); }; -- cgit v1.1