diff options
author | Chris Lattner <sabre@nondot.org> | 2002-04-27 06:56:12 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2002-04-27 06:56:12 +0000 |
commit | c8e665431be235941eedfd0e6434fa5386d632d1 (patch) | |
tree | ec509bce054e36357111e58ecd2207fcc8238b9b /llvm/lib/Analysis/PostDominators.cpp | |
parent | 66cfaf1da24e732948b75d1d82272793da8ec5ae (diff) | |
download | bcm5719-llvm-c8e665431be235941eedfd0e6434fa5386d632d1.tar.gz bcm5719-llvm-c8e665431be235941eedfd0e6434fa5386d632d1.zip |
* Rename MethodPass class to FunctionPass
- Rename runOnMethod to runOnFunction
* Transform getAnalysisUsageInfo into getAnalysisUsage
- Method is now const
- It now takes one AnalysisUsage object to fill in instead of 3 vectors
to fill in
- Pass's now specify which other passes they _preserve_ not which ones
they modify (be conservative!)
- A pass can specify that it preserves all analyses (because it never
modifies the underlying program)
* s/Method/Function/g in other random places as well
llvm-svn: 2333
Diffstat (limited to 'llvm/lib/Analysis/PostDominators.cpp')
-rw-r--r-- | llvm/lib/Analysis/PostDominators.cpp | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/llvm/lib/Analysis/PostDominators.cpp b/llvm/lib/Analysis/PostDominators.cpp index 71ee3d74cf9..387b673f606 100644 --- a/llvm/lib/Analysis/PostDominators.cpp +++ b/llvm/lib/Analysis/PostDominators.cpp @@ -22,7 +22,7 @@ using std::set; AnalysisID cfg::DominatorSet::ID(AnalysisID::create<cfg::DominatorSet>()); AnalysisID cfg::DominatorSet::PostDomID(AnalysisID::create<cfg::DominatorSet>()); -bool cfg::DominatorSet::runOnMethod(Function *F) { +bool cfg::DominatorSet::runOnFunction(Function *F) { Doms.clear(); // Reset from the last time we were run... if (isPostDominator()) @@ -129,17 +129,16 @@ void cfg::DominatorSet::calcPostDominatorSet(Function *M) { } while (Changed); } -// getAnalysisUsageInfo - This obviously provides a dominator set, but it also -// uses the UnifyMethodExitNodes pass if building post-dominators +// getAnalysisUsage - This obviously provides a dominator set, but it also +// uses the UnifyFunctionExitNodes pass if building post-dominators // -void cfg::DominatorSet::getAnalysisUsageInfo(Pass::AnalysisSet &Requires, - Pass::AnalysisSet &Destroyed, - Pass::AnalysisSet &Provided) { +void cfg::DominatorSet::getAnalysisUsage(AnalysisUsage &AU) const { + AU.setPreservesAll(); if (isPostDominator()) { - Provided.push_back(PostDomID); - Requires.push_back(UnifyMethodExitNodes::ID); + AU.addProvided(PostDomID); + AU.addRequired(UnifyMethodExitNodes::ID); } else { - Provided.push_back(ID); + AU.addProvided(ID); } } |