Lines Matching defs:PMS
1826 void ModulePass::assignPassManager(PMStack &PMS,
1829 while (!PMS.empty()) {
1830 PassManagerType TopPMType = PMS.top()->getPassManagerType();
1834 PMS.pop(); // Pop children pass managers
1838 assert(!PMS.empty() && "Unable to find appropriate Pass Manager");
1839 PMS.top()->add(this);
1844 void FunctionPass::assignPassManager(PMStack &PMS,
1848 while (!PMS.empty()) {
1849 if (PMS.top()->getPassManagerType() > PMT_FunctionPassManager)
1850 PMS.pop();
1857 if (PMS.top()->getPassManagerType() == PMT_FunctionPassManager) {
1858 FPP = (FPPassManager *)PMS.top();
1860 assert(!PMS.empty() && "Unable to create Function Pass Manager");
1861 PMDataManager *PMD = PMS.top();
1865 FPP->populateInheritedAnalysis(PMS);
1872 // and push new managers into PMS
1873 FPP->assignPassManager(PMS, PMD->getPassManagerType());
1875 // [4] Push new manager into PMS
1876 PMS.push(FPP);
1885 void BasicBlockPass::assignPassManager(PMStack &PMS,
1891 if (!PMS.empty() &&
1892 PMS.top()->getPassManagerType() == PMT_BasicBlockPassManager) {
1893 BBP = (BBPassManager *)PMS.top();
1897 assert(!PMS.empty() && "Unable to create BasicBlock Pass Manager");
1898 PMDataManager *PMD = PMS.top();
1909 // and push new managers into PMS
1910 BBP->assignPassManager(PMS, PreferredType);
1912 // [4] Push new manager into PMS
1913 PMS.push(BBP);