aboutsummaryrefslogtreecommitdiff
path: root/lib/VMCore/PassManager.cpp
AgeCommit message (Collapse)Author
2006-12-08Implement PMTopLevel::findAnalysisPass() andDevang Patel
PMDataManager::findAnalysisPass() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32377 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-08During runOnModule() do initialization and finalization.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32371 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-08Reuse code. Directly use runOnFunction().Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32370 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-08Implement FunctionPassManager_New::FunctionPassManager_New(ModuleProvider *P)Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32368 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-08BasicBlockPassManager_New::runOnFunction()Devang Patel
Do initialization and finalization. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32346 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-08doInitialization and doFinalization for BasicBlockPassManager_NewDevang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32345 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-08Reimplement removeDeadPasses().Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32344 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07set Last User.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32342 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Maintain level(or depth) of pass manager in pass manager food chain.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32339 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07New method, PMDataManager::collectRequiredAnalysisPasses()Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32338 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07When new pass manager is created, initialize available analysis infoDevang Patel
of existing manager at the same level. Otherwise, such info may be considered as available, which not true. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32334 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07PMDataManager does not maintain LastUser info.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32332 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Make current pass info available _after_ removing info that is notDevang Patel
preserved. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32329 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Add TODOsDevang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32328 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Fix thinko.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32327 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Top level manages schedule the pass immediately at the time of insertion.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32326 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Now FunctionPassManagerImpl_New and PassManagerImpl_New derives fromDevang Patel
PMTopLevelManager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32325 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Reimplement schedulePass interface. Move it into PMTopLevelManager.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32324 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07While initializing AvailableAnalysis info, make ImmutablePasses availableDevang Patel
immediately. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32323 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Add ImmutablePass into the list of info managed by top level passDevang Patel
manager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32322 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07If pass reserves all analysis info then each info is not separatelyDevang Patel
included in PreservedSet. So check getPreservesAll() first. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32319 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Pass Managers themselves do not invalidate any analysis info.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32318 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Add a handle to the top level pass manager in PMDataManager.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32317 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Cosmetic markers to divide code in separate chunks.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32316 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07s/noteDownAvailableAnalysis/recordAvailableAnalysisDevang Patel
While recording available analysis, include interfaces implemented. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32315 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Add PMTopLevelManager. It is not used yet.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32314 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07RequiredAnalysis support is buggy and not used at the moment so removeDevang Patel
the code. Add TODO note. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32313 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07s/clearAnalysis/initializeAnalysisInfo/gDevang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32312 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07s/CommonPassManagerImpl/PMDataManager/gDevang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32311 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Add overview of pass manager.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32309 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-07Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, areBill Wendling
now cerr, cout, and NullStream resp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32298 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-28Changed to using LLVM streams.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31955 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-15Add run(Function &F) support in FunctionPassManager_NewDevang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31756 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-15Tidy up marking of last analysis user pass.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31746 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-15Add doInitialization and doFinalization support in FunctionManager_New.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31745 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-15Do not derive CommonPassManagerImpl from Pass.Devang Patel
Now BasicBlockPassManager_New is a FunctionPass, FunctionPassManager_New is a ModulePass git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31744 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-14Copy initializeAnalysisImpl() implementation from PassManagerT.Devang Patel
Update LastUser to recursively walk required transitive set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31741 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-14Implement removeDeadPasses().Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31722 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-14Keep track of Last user of analysis phase.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31721 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-14Use std::map to map AnalysisID and Pass.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31720 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-14Manage analysis passes during run.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31716 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-14Update comments.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31713 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-13Update PassManagerImpl_New::analysisCurrentlyAvailable to check allDevang Patel
managed passmanagers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31710 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-13Check currently available anlysis in active managers.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31709 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-11Implement schedulePasses().Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31671 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-11Implement PassManagerImpl_New::add().Devang Patel
Just add pass into the pass manager queue without processing analysis. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31670 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-11While adding pass into the manager, process Analysis only if it isDevang Patel
required to do so. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31669 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-11Remove dead code.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31668 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-11Code refactoring. Move common code into CommonPassManagerImpl :)Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31667 91177308-0d34-0410-b5e6-96231b3b80d8
2006-11-11Move CommonPassManagerImpl from PassManager.h to PassManager.cppDevang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31666 91177308-0d34-0410-b5e6-96231b3b80d8