bool runOnFunction(Function &F);
/// Return true IFF AnalysisID AID is currently available.
+ /// TODO : Replace this method with getAnalysisPass()
Pass *getAnalysisPassFromManager(AnalysisID AID);
/// Pass Manager itself does not invalidate any analysis info.
bool runOnFunction(Function &F);
/// Return true IFF AnalysisID AID is currently available.
+ /// TODO : Replace this method with getAnalysisPass()
Pass *getAnalysisPassFromManager(AnalysisID AID);
/// doInitialization - Run all of the initializers for the function passes.
bool runOnModule(Module &M);
/// Return true IFF AnalysisID AID is currently available.
+ /// TODO : Replace this method with getAnalysisPass()
Pass *getAnalysisPassFromManager(AnalysisID AID);
/// Pass Manager itself does not invalidate any analysis info.
bool run(Module &M);
/// Return true IFF AnalysisID AID is currently available.
+ /// TODO : Replace this method with getAnalysisPass()
Pass *getAnalysisPassFromManager(AnalysisID AID);
/// Pass Manager itself does not invalidate any analysis info.
}
/// Return true IFF AnalysisID AID is currently available.
+/// TODO : Replace this method with getAnalysisPass()
Pass * BasicBlockPassManager_New::getAnalysisPassFromManager(AnalysisID AID) {
return getAnalysisPass(AID);
}
if (!activeBBPassManager
|| !activeBBPassManager->addPass(BP)) {
+ // TODO : intialize AvailableAnalysis info
+
activeBBPassManager = new BasicBlockPassManager_New();
addPassToManager(activeBBPassManager, false);
if (!activeBBPassManager->addPass(BP))
return false;
addPassToManager (FP);
+ // TODO : intialize AvailableAnalysis info
activeBBPassManager = NULL;
return true;
}
/// Return true IFF AnalysisID AID is currently available.
+/// TODO : Replace this method with getAnalysisPass()
Pass *FunctionPassManagerImpl_New::getAnalysisPassFromManager(AnalysisID AID) {
Pass *P = getAnalysisPass(AID);
// If P is FunctionPass then use function pass maanager.
if (FunctionPass *FP = dynamic_cast<FunctionPass*>(P)) {
- activeFunctionPassManager = NULL;
-
if (!activeFunctionPassManager
|| !activeFunctionPassManager->addPass(P)) {
+ // TODO : intialize AvailableAnalysis info
+ activeFunctionPassManager = NULL;
+
activeFunctionPassManager = new FunctionPassManagerImpl_New();
addPassToManager(activeFunctionPassManager, false);
if (!activeFunctionPassManager->addPass(FP))
return false;
addPassToManager(MP);
+ // TODO : intialize AvailableAnalysis info
activeFunctionPassManager = NULL;
return true;
}
}
/// Return true IFF AnalysisID AID is currently available.
+/// TODO : Replace this method with getAnalysisPass()
Pass *ModulePassManager_New::getAnalysisPassFromManager(AnalysisID AID) {
-
Pass *P = getAnalysisPass(AID);
if (P)
return P;
// PassManagerImpl implementation
/// Return true IFF AnalysisID AID is currently available.
+/// TODO : Replace this method with getAnalysisPass()
Pass *PassManagerImpl_New::getAnalysisPassFromManager(AnalysisID AID) {
Pass *P = NULL;