Lines Matching defs:MPM

368 void PassBuilder::invokeOptimizerEarlyEPCallbacks(ModulePassManager &MPM,
372 C(MPM, Level, Phase);
374 void PassBuilder::invokeOptimizerLastEPCallbacks(ModulePassManager &MPM,
378 C(MPM, Level, Phase);
381 ModulePassManager &MPM, OptimizationLevel Level) {
383 C(MPM, Level);
386 ModulePassManager &MPM, OptimizationLevel Level) {
388 C(MPM, Level);
390 void PassBuilder::invokePipelineStartEPCallbacks(ModulePassManager &MPM,
393 C(MPM, Level);
396 ModulePassManager &MPM, OptimizationLevel Level, ThinOrFullLTOPhase Phase) {
398 C(MPM, Level, Phase);
402 static void addAnnotationRemarksPass(ModulePassManager &MPM) {
403 MPM.addPass(createModuleToFunctionPassAdaptor(AnnotationRemarksPass()));
775 void PassBuilder::addRequiredLTOPreLinkPasses(ModulePassManager &MPM) {
776 MPM.addPass(CanonicalizeAliasesPass());
777 MPM.addPass(NameAnonGlobalPass());
780 void PassBuilder::addPreInlinerPasses(ModulePassManager &MPM,
811 MPM.addPass(std::move(MIWP));
816 MPM.addPass(GlobalDCEPass());
819 void PassBuilder::addPostPGOLoopRotation(ModulePassManager &MPM,
823 MPM.addPass(createModuleToFunctionPassAdaptor(
833 void PassBuilder::addPGOInstrPasses(ModulePassManager &MPM,
843 MPM.addPass(
847 MPM.addPass(RequireAnalysisPass<ProfileSummaryAnalysis, Module>());
852 MPM.addPass(PGOInstrumentationGen(IsCS ? PGOInstrumentationType::CSFDO
855 addPostPGOLoopRotation(MPM, Level);
870 MPM.addPass(InstrProfilingLoweringPass(Options, IsCS));
874 ModulePassManager &MPM, bool RunProfileGen, bool IsCS,
879 MPM.addPass(
883 MPM.addPass(RequireAnalysisPass<ProfileSummaryAnalysis, Module>());
888 MPM.addPass(PGOInstrumentationGen(IsCS ? PGOInstrumentationType::CSFDO
898 MPM.addPass(InstrProfilingLoweringPass(Options, IsCS));
1007 ModulePassManager MPM;
1031 MPM.addPass(ModuleInlinerPass(IP, UseInlineAdvisor, Phase));
1033 MPM.addPass(GlobalOptPass());
1034 MPM.addPass(GlobalDCEPass());
1035 MPM.addPass(PGOCtxProfFlatteningPass());
1038 MPM.addPass(createModuleToFunctionPassAdaptor(
1043 MPM.addPass(createModuleToPostOrderCGSCCPassAdaptor(
1045 MPM.addPass(
1049 return MPM;
1061 ModulePassManager MPM;
1067 MPM.addPass(SampleProfileProbePass(TM));
1093 MPM.addPass(PGOIndirectCallPromotion(true /* InLTO */, HasSampleProfile));
1101 MPM.addPass(InferFunctionAttrsPass());
1102 MPM.addPass(CoroEarlyPass());
1115 MPM.addPass(createModuleToFunctionPassAdaptor(
1122 MPM.addPass(SampleProfileLoaderPass(PGOOpt->ProfileFile,
1126 MPM.addPass(RequireAnalysisPass<ProfileSummaryAnalysis, Module>());
1134 MPM.addPass(
1140 MPM.addPass(OpenMPOptPass());
1143 MPM.addPass(AttributorPass());
1149 MPM.addPass(LowerTypeTestsPass(nullptr, nullptr,
1152 invokePipelineEarlySimplificationEPCallbacks(MPM, Level, Phase);
1158 MPM.addPass(IPSCCPPass(
1166 MPM.addPass(CalledValuePropagationPass());
1169 MPM.addPass(GlobalOptPass());
1180 MPM.addPass(createModuleToFunctionPassAdaptor(std::move(GlobalCleanupPM),
1212 addPreInlinerPasses(MPM, Level, Phase);
1216 addPGOInstrPasses(MPM, Level,
1222 MPM.addPass(PGOInstrumentationGen(PGOInstrumentationType::CTXPROF));
1228 MPM.addPass(AssignGUIDPass());
1230 return MPM;
1231 addPostPGOLoopRotation(MPM, Level);
1232 MPM.addPass(PGOCtxProfLoweringPass());
1235 MPM, Level, /* RunProfileGen */ true, /* IsCS */ false,
1241 MPM.addPass(PGOIndirectCallPromotion(false, false));
1244 MPM.addPass(PGOInstrumentationGenCreateVar(PGOOpt->CSProfileGenFile,
1248 MPM.addPass(MemProfUsePass(PGOOpt->MemoryProfile, PGOOpt->FS));
1252 MPM.addPass(PGOForceFunctionAttrsPass(PGOOpt->ColdOptType));
1254 MPM.addPass(AlwaysInlinerPass(/*InsertLifetimeIntrinsics=*/true));
1257 MPM.addPass(buildModuleInlinerPipeline(Level, Phase));
1259 MPM.addPass(buildInlinerPipeline(Level, Phase));
1263 MPM.addPass(DeadArgumentEliminationPass());
1266 MPM.addPass(CoroCleanupPass());
1269 MPM.addPass(GlobalOptPass());
1270 MPM.addPass(GlobalDCEPass());
1272 return MPM;
1422 ModulePassManager MPM;
1427 MPM.addPass(PartialInlinerPass());
1439 MPM.addPass(EliminateAvailableExternallyPass());
1442 MPM.addPass(InstrOrderFilePass());
1447 MPM.addPass(ReversePostOrderFunctionAttrsPass());
1455 addPGOInstrPasses(MPM, Level, /*RunProfileGen=*/true,
1460 addPGOInstrPasses(MPM, Level, /*RunProfileGen=*/false,
1474 MPM.addPass(RecomputeGlobalsAAPass());
1476 invokeOptimizerEarlyEPCallbacks(MPM, Level, LTOPhase);
1570 MPM.addPass(createModuleToFunctionPassAdaptor(std::move(OptimizePM),
1573 invokeOptimizerLastEPCallbacks(MPM, Level, LTOPhase);
1579 MPM.addPass(HotColdSplittingPass());
1586 MPM.addPass(IROutlinerPass());
1592 MPM.addPass(GlobalDCEPass());
1593 MPM.addPass(ConstantMergePass());
1598 MPM.addPass(MergeFunctionsPass());
1601 MPM.addPass(CGProfilePass(LTOPhase == ThinOrFullLTOPhase::FullLTOPostLink ||
1606 MPM.addPass(RelLookupTableConverterPass());
1608 return MPM;
1617 ModulePassManager MPM;
1620 MPM.addPass(Annotation2MetadataPass());
1623 MPM.addPass(ForceFunctionAttrsPass());
1626 MPM.addPass(createModuleToFunctionPassAdaptor(AddDiscriminatorsPass()));
1629 invokePipelineStartEPCallbacks(MPM, Level);
1632 MPM.addPass(buildModuleSimplificationPipeline(Level, Phase));
1635 MPM.addPass(buildModuleOptimizationPipeline(Level, Phase));
1639 MPM.addPass(PseudoProbeUpdatePass());
1642 addAnnotationRemarksPass(MPM);
1645 addRequiredLTOPreLinkPasses(MPM);
1646 return MPM;
1652 ModulePassManager MPM;
1654 MPM.addPass(buildThinLTOPreLinkDefaultPipeline(Level));
1656 MPM.addPass(buildLTOPreLinkDefaultPipeline(Level));
1657 MPM.addPass(EmbedBitcodePass(ThinLTO, EmitSummary));
1663 MPM.addPass(
1668 MPM.addPass(buildThinLTODefaultPipeline(Level, /*ImportSummary=*/nullptr));
1671 MPM.addPass(
1674 addAnnotationRemarksPass(MPM);
1676 return MPM;
1684 ModulePassManager MPM;
1687 MPM.addPass(Annotation2MetadataPass());
1690 MPM.addPass(ForceFunctionAttrsPass());
1693 MPM.addPass(createModuleToFunctionPassAdaptor(AddDiscriminatorsPass()));
1696 invokePipelineStartEPCallbacks(MPM, Level);
1701 MPM.addPass(buildModuleSimplificationPipeline(
1707 addRequiredLTOPreLinkPasses(MPM);
1708 return MPM;
1719 MPM.addPass(PartialInlinerPass());
1723 MPM.addPass(PseudoProbeUpdatePass());
1728 invokeOptimizerEarlyEPCallbacks(MPM, Level,
1730 invokeOptimizerLastEPCallbacks(MPM, Level,
1734 addAnnotationRemarksPass(MPM);
1736 addRequiredLTOPreLinkPasses(MPM);
1738 return MPM;
1743 ModulePassManager MPM;
1749 MPM.addPass(MemProfContextDisambiguation(
1767 MPM.addPass(WholeProgramDevirtPass(nullptr, ImportSummary));
1768 MPM.addPass(LowerTypeTestsPass(nullptr, ImportSummary));
1774 MPM.addPass(LowerTypeTestsPass(nullptr, nullptr,
1779 MPM.addPass(EliminateAvailableExternallyPass());
1780 MPM.addPass(GlobalDCEPass());
1781 return MPM;
1784 MPM.addPass(
1788 MPM.addPass(buildModuleSimplificationPipeline(
1792 MPM.addPass(buildModuleOptimizationPipeline(
1796 addAnnotationRemarksPass(MPM);
1798 return MPM;
1811 ModulePassManager MPM;
1813 invokeFullLinkTimeOptimizationEarlyEPCallbacks(MPM, Level);
1817 MPM.addPass(CrossDSOCFIPass());
1822 MPM.addPass(WholeProgramDevirtPass(ExportSummary, nullptr));
1823 MPM.addPass(LowerTypeTestsPass(ExportSummary, nullptr));
1826 MPM.addPass(LowerTypeTestsPass(nullptr, nullptr,
1829 invokeFullLinkTimeOptimizationLastEPCallbacks(MPM, Level);
1832 addAnnotationRemarksPass(MPM);
1834 return MPM;
1839 MPM.addPass(SampleProfileLoaderPass(PGOOpt->ProfileFile,
1844 MPM.addPass(RequireAnalysisPass<ProfileSummaryAnalysis, Module>());
1848 MPM.addPass(OpenMPOptPass(ThinOrFullLTOPhase::FullLTOPostLink));
1852 MPM.addPass(GlobalDCEPass(/*InLTOPostLink=*/true));
1856 MPM.addPass(InferFunctionAttrsPass());
1859 MPM.addPass(createModuleToFunctionPassAdaptor(
1866 MPM.addPass(PGOIndirectCallPromotion(
1876 MPM.addPass(createModuleToPostOrderCGSCCPassAdaptor(std::move(CGPM)));
1881 MPM.addPass(IPSCCPPass(IPSCCPOptions(/*AllowFuncSpec=*/
1887 MPM.addPass(CalledValuePropagationPass());
1893 MPM.addPass(ReversePostOrderFunctionAttrsPass());
1896 MPM.addPass(GlobalSplitPass());
1900 MPM.addPass(WholeProgramDevirtPass(ExportSummary, nullptr));
1906 MPM.addPass(LowerTypeTestsPass(ExportSummary, nullptr));
1910 MPM.addPass(LowerTypeTestsPass(nullptr, nullptr,
1913 invokeFullLinkTimeOptimizationLastEPCallbacks(MPM, Level);
1916 addAnnotationRemarksPass(MPM);
1918 return MPM;
1922 MPM.addPass(GlobalOptPass());
1925 MPM.addPass(createModuleToFunctionPassAdaptor(PromotePass()));
1929 MPM.addPass(ConstantMergePass());
1932 MPM.addPass(DeadArgumentEliminationPass());
1944 MPM.addPass(createModuleToFunctionPassAdaptor(std::move(PeepholeFPM),
1948 MPM.addPass(ExpandVariadicsPass(ExpandVariadicsMode::Optimize));
1956 MPM.addPass(ModuleInlinerPass(getInlineParamsFromOptLevel(Level),
1960 MPM.addPass(ModuleInlinerWrapperPass(
1971 MPM.addPass(MemProfContextDisambiguation(
1976 MPM.addPass(GlobalOptPass());
1979 MPM.addPass(OpenMPOptPass(ThinOrFullLTOPhase::FullLTOPostLink));
1982 MPM.addPass(GlobalDCEPass(/*InLTOPostLink=*/true));
1986 MPM.addPass(createModuleToPostOrderCGSCCPassAdaptor(ArgumentPromotionPass()));
2002 addPGOInstrPasses(MPM, Level, /*RunProfileGen=*/true,
2007 addPGOInstrPasses(MPM, Level, /*RunProfileGen=*/false,
2021 MPM.addPass(createModuleToFunctionPassAdaptor(std::move(FPM),
2024 MPM.addPass(
2030 MPM.addPass(RequireAnalysisPass<GlobalsAA, Module>());
2033 MPM.addPass(
2081 MPM.addPass(createModuleToPostOrderCGSCCPassAdaptor(
2086 MPM.addPass(createModuleToFunctionPassAdaptor(std::move(MainFPM),
2093 MPM.addPass(LowerTypeTestsPass(ExportSummary, nullptr));
2096 MPM.addPass(LowerTypeTestsPass(nullptr, nullptr,
2101 MPM.addPass(HotColdSplittingPass());
2122 MPM.addPass(createModuleToFunctionPassAdaptor(std::move(LateFPM)));
2125 MPM.addPass(EliminateAvailableExternallyPass());
2128 MPM.addPass(GlobalDCEPass(/*InLTOPostLink=*/true));
2131 MPM.addPass(MergeFunctionsPass());
2133 MPM.addPass(RelLookupTableConverterPass());
2136 MPM.addPass(CGProfilePass(/*InLTOPostLink=*/true));
2138 invokeFullLinkTimeOptimizationLastEPCallbacks(MPM, Level);
2141 addAnnotationRemarksPass(MPM);
2143 return MPM;
2152 ModulePassManager MPM;
2159 MPM.addPass(SampleProfileProbePass(TM));
2164 MPM,
2170 MPM.addPass(createModuleToFunctionPassAdaptor(
2173 invokePipelineStartEPCallbacks(MPM, Level);
2176 MPM.addPass(createModuleToFunctionPassAdaptor(AddDiscriminatorsPass()));
2181 MPM.addPass(SampleProfileLoaderPass(PGOOpt->ProfileFile,
2188 MPM.addPass(RequireAnalysisPass<ProfileSummaryAnalysis, Module>());
2191 invokePipelineEarlySimplificationEPCallbacks(MPM, Level, Phase);
2197 MPM.addPass(AlwaysInlinerPass(
2201 MPM.addPass(MergeFunctionsPass());
2204 MPM.addPass(
2211 MPM.addPass(createModuleToPostOrderCGSCCPassAdaptor(std::move(CGPM)));
2217 MPM.addPass(createModuleToFunctionPassAdaptor(
2225 MPM.addPass(createModuleToFunctionPassAdaptor(
2233 MPM.addPass(createModuleToFunctionPassAdaptor(std::move(FPM)));
2236 invokeOptimizerEarlyEPCallbacks(MPM, Level, Phase);
2242 MPM.addPass(createModuleToFunctionPassAdaptor(std::move(FPM)));
2249 MPM.addPass(createModuleToFunctionPassAdaptor(std::move(FPM)));
2259 MPM.addPass(CoroConditionalWrapper(std::move(CoroPM)));
2261 invokeOptimizerLastEPCallbacks(MPM, Level, Phase);
2264 addRequiredLTOPreLinkPasses(MPM);
2266 MPM.addPass(createModuleToFunctionPassAdaptor(AnnotationRemarksPass()));
2268 return MPM;