Lines Matching refs:Pass
181 virtual Pass *getAsPass() { return this; } in getAsPass()
217 class FunctionPassManagerImpl : public Pass,
226 Pass(PT_PassManager, ID), PMDataManager(), in FunctionPassManagerImpl()
233 void add(Pass *P) { in add()
238 Pass *createPrinterPass(raw_ostream &O, const std::string &Banner) const { in createPrinterPass()
260 virtual Pass *getAsPass() { return this; } in getAsPass()
287 class MPPassManager : public Pass, public PMDataManager {
291 Pass(PT_PassManager, ID), PMDataManager() { } in MPPassManager()
295 for (std::map<Pass *, FunctionPassManagerImpl *>::iterator in ~MPPassManager()
304 Pass *createPrinterPass(raw_ostream &O, const std::string &Banner) const { in createPrinterPass()
320 virtual void addLowerLevelRequiredPass(Pass *P, Pass *RequiredPass);
325 virtual Pass* getOnTheFlyPass(Pass *MP, AnalysisID PI, Function &F);
332 virtual Pass *getAsPass() { return this; } in getAsPass()
340 std::map<Pass *, FunctionPassManagerImpl *>::const_iterator I = in dumpPassStructure()
360 std::map<Pass *, FunctionPassManagerImpl *> OnTheFlyManagers;
369 class PassManagerImpl : public Pass,
377 Pass(PT_PassManager, ID), PMDataManager(), in PassManagerImpl()
384 void add(Pass *P) { in add()
389 Pass *createPrinterPass(raw_ostream &O, const std::string &Banner) const { in createPrinterPass()
403 virtual Pass *getAsPass() { return this; } in getAsPass()
431 DenseMap<Pass*, Timer*> TimingData;
441 for (DenseMap<Pass*, Timer*>::iterator I = TimingData.begin(), in ~TimingInfo()
453 Timer *getPassTimer(Pass *P) { in getPassTimer()
481 PMTopLevelManager::setLastUser(ArrayRef<Pass*> AnalysisPasses, Pass *P) { in setLastUser()
486 for (SmallVectorImpl<Pass *>::const_iterator I = AnalysisPasses.begin(), in setLastUser()
488 Pass *AP = *I; in setLastUser()
497 SmallVector<Pass *, 12> LastUses; in setLastUser()
498 SmallVector<Pass *, 12> LastPMUses; in setLastUser()
501 Pass *AnalysisPass = findAnalysisPass(*I); in setLastUser()
523 for (DenseMap<Pass *, Pass *>::iterator LUI = LastUser.begin(), in setLastUser()
534 void PMTopLevelManager::collectLastUses(SmallVectorImpl<Pass *> &LastUses, in collectLastUses()
535 Pass *P) { in collectLastUses()
536 DenseMap<Pass *, SmallPtrSet<Pass *, 8> >::iterator DMI = in collectLastUses()
541 SmallPtrSet<Pass *, 8> &LU = DMI->second; in collectLastUses()
542 for (SmallPtrSet<Pass *, 8>::iterator I = LU.begin(), in collectLastUses()
549 AnalysisUsage *PMTopLevelManager::findAnalysisUsage(Pass *P) { in findAnalysisUsage()
551 DenseMap<Pass *, AnalysisUsage *>::iterator DMI = AnUsageMap.find(P); in findAnalysisUsage()
565 void PMTopLevelManager::schedulePass(Pass *P) { in schedulePass()
593 Pass *AnalysisPass = findAnalysisPass(*I); in schedulePass()
604 Pass *AnalysisPass2 = findAnalysisPass(*I2); in schedulePass()
652 Pass *PP = P->createPrinterPass( in schedulePass()
661 Pass *PP = P->createPrinterPass( in schedulePass()
670 Pass *PMTopLevelManager::findAnalysisPass(AnalysisID AID) { in findAnalysisPass()
675 if (Pass *P = (*I)->findAnalysisPass(AID, false)) in findAnalysisPass()
682 if (Pass *P = (*I)->findAnalysisPass(AID, false)) in findAnalysisPass()
760 for (DenseMap<Pass *, Pass *>::iterator DMI = LastUser.begin(), in initializeAllAnalysisInfo()
762 DenseMap<Pass *, SmallPtrSet<Pass *, 8> >::iterator InvDMI = in initializeAllAnalysisInfo()
765 SmallPtrSet<Pass *, 8> &L = InvDMI->second; in initializeAllAnalysisInfo()
768 SmallPtrSet<Pass *, 8> L; L.insert(DMI->first); in initializeAllAnalysisInfo()
784 for (DenseMap<Pass *, AnalysisUsage *>::iterator DMI = AnUsageMap.begin(), in ~PMTopLevelManager()
793 void PMDataManager::recordAvailableAnalysis(Pass *P) { in recordAvailableAnalysis()
811 bool PMDataManager::preserveHigherLevelAnalysis(Pass *P) { in preserveHigherLevelAnalysis()
817 for (SmallVectorImpl<Pass *>::iterator I = HigherLevelAnalysis.begin(), in preserveHigherLevelAnalysis()
819 Pass *P1 = *I; in preserveHigherLevelAnalysis()
831 void PMDataManager::verifyPreservedAnalysis(Pass *P) { in verifyPreservedAnalysis()
843 if (Pass *AP = findAnalysisPass(AID, true)) { in verifyPreservedAnalysis()
851 void PMDataManager::removeNotPreservedAnalysis(Pass *P) { in removeNotPreservedAnalysis()
857 for (std::map<AnalysisID, Pass*>::iterator I = AvailableAnalysis.begin(), in removeNotPreservedAnalysis()
859 std::map<AnalysisID, Pass*>::iterator Info = I++; in removeNotPreservedAnalysis()
865 Pass *S = Info->second; in removeNotPreservedAnalysis()
880 for (std::map<AnalysisID, Pass*>::iterator in removeNotPreservedAnalysis()
883 std::map<AnalysisID, Pass *>::iterator Info = I++; in removeNotPreservedAnalysis()
889 Pass *S = Info->second; in removeNotPreservedAnalysis()
900 void PMDataManager::removeDeadPasses(Pass *P, StringRef Msg, in removeDeadPasses()
903 SmallVector<Pass *, 12> DeadPasses; in removeDeadPasses()
917 for (SmallVectorImpl<Pass *>::iterator I = DeadPasses.begin(), in removeDeadPasses()
922 void PMDataManager::freePass(Pass *P, StringRef Msg, in freePass()
943 std::map<AnalysisID, Pass*>::iterator Pos = in freePass()
953 void PMDataManager::add(Pass *P, bool ProcessAnalysis) { in add()
961 SmallVector<Pass *, 12> TransferLastUses; in add()
970 SmallVector<Pass *, 12> LastUses; in add()
971 SmallVector<Pass *, 8> RequiredPasses; in add()
978 for (SmallVectorImpl<Pass *>::iterator I = RequiredPasses.begin(), in add()
980 Pass *PRequired = *I; in add()
1006 Pass *My_PM = getAsPass(); in add()
1016 Pass *AnalysisPass = PI->createPass(); in add()
1033 void PMDataManager::collectRequiredAnalysis(SmallVectorImpl<Pass *> &RP, in collectRequiredAnalysis()
1035 Pass *P) { in collectRequiredAnalysis()
1040 if (Pass *AnalysisPass = findAnalysisPass(*I, true)) in collectRequiredAnalysis()
1049 if (Pass *AnalysisPass = findAnalysisPass(*I, true)) in collectRequiredAnalysis()
1061 void PMDataManager::initializeAnalysisImpl(Pass *P) { in initializeAnalysisImpl()
1067 Pass *Impl = findAnalysisPass(*I, true); in initializeAnalysisImpl()
1080 Pass *PMDataManager::findAnalysisPass(AnalysisID AID, bool SearchParent) { in findAnalysisPass()
1083 std::map<AnalysisID, Pass*>::const_iterator I = AvailableAnalysis.find(AID); in findAnalysisPass()
1096 void PMDataManager::dumpLastUses(Pass *P, unsigned Offset) const{ in dumpLastUses()
1098 SmallVector<Pass *, 12> LUses; in dumpLastUses()
1106 for (SmallVectorImpl<Pass *>::iterator I = LUses.begin(), in dumpLastUses()
1114 for (SmallVectorImpl<Pass *>::const_iterator I = PassVector.begin(), in dumpPassArguments()
1126 void PMDataManager::dumpPassInfo(Pass *P, enum PassDebuggingString S1, in dumpPassInfo()
1169 void PMDataManager::dumpRequiredSet(const Pass *P) const { in dumpRequiredSet()
1178 void PMDataManager::dumpPreservedSet(const Pass *P) const { in dumpPreservedSet()
1187 void PMDataManager::dumpAnalysisUsage(StringRef Msg, const Pass *P, in dumpAnalysisUsage()
1211 void PMDataManager::addLowerLevelRequiredPass(Pass *P, Pass *RequiredPass) { in addLowerLevelRequiredPass()
1233 Pass *PMDataManager::getOnTheFlyPass(Pass *P, AnalysisID PI, Function &F) { in getOnTheFlyPass()
1239 for (SmallVectorImpl<Pass *>::iterator I = PassVector.begin(), in ~PMDataManager()
1247 Pass *AnalysisResolver::getAnalysisIfAvailable(AnalysisID ID, bool dir) const { in getAnalysisIfAvailable()
1251 Pass *AnalysisResolver::findImplPass(Pass *P, AnalysisID AnalysisPI, in findImplPass()
1365 void FunctionPassManager::add(Pass *P) { in add()
1552 for (std::map<Pass *, FunctionPassManagerImpl *>::iterator in runOnModule()
1588 for (std::map<Pass *, FunctionPassManagerImpl *>::iterator in runOnModule()
1603 void MPPassManager::addLowerLevelRequiredPass(Pass *P, Pass *RequiredPass) { in addLowerLevelRequiredPass()
1622 SmallVector<Pass *, 1> LU; in addLowerLevelRequiredPass()
1631 Pass* MPPassManager::getOnTheFlyPass(Pass *MP, AnalysisID PI, Function &F){ in getOnTheFlyPass()
1677 void PassManager::add(Pass *P) { in add()
1711 Timer *llvm::getPassTimer(Pass *P) { in getPassTimer()