Lines Matching refs:MPM
306 legacy::PassManagerBase &MPM) { in addFunctionSimplificationPasses() argument
310 MPM.add(createSROAPass()); in addFunctionSimplificationPasses()
311 MPM.add(createEarlyCSEPass(true /* Enable mem-ssa. */)); // Catch trivial redundancies in addFunctionSimplificationPasses()
313 MPM.add(createAssumeSimplifyPass()); in addFunctionSimplificationPasses()
317 MPM.add(createGVNHoistPass()); in addFunctionSimplificationPasses()
319 MPM.add(createGVNSinkPass()); in addFunctionSimplificationPasses()
320 MPM.add(createCFGSimplificationPass( in addFunctionSimplificationPasses()
326 MPM.add(createConstraintEliminationPass()); in addFunctionSimplificationPasses()
330 MPM.add(createSpeculativeExecutionIfHasBranchDivergencePass()); in addFunctionSimplificationPasses()
332 MPM.add(createJumpThreadingPass()); // Thread jumps. in addFunctionSimplificationPasses()
333 MPM.add(createCorrelatedValuePropagationPass()); // Propagate conditionals in addFunctionSimplificationPasses()
335 MPM.add( in addFunctionSimplificationPasses()
340 MPM.add(createAggressiveInstCombinerPass()); in addFunctionSimplificationPasses()
341 MPM.add(createInstructionCombiningPass()); in addFunctionSimplificationPasses()
343 MPM.add(createLibCallsShrinkWrapPass()); in addFunctionSimplificationPasses()
344 addExtensionsToPM(EP_Peephole, MPM); in addFunctionSimplificationPasses()
348 MPM.add(createTailCallEliminationPass()); // Eliminate tail calls in addFunctionSimplificationPasses()
349 MPM.add( in addFunctionSimplificationPasses()
352 MPM.add(createReassociatePass()); // Reassociate expressions in addFunctionSimplificationPasses()
357 MPM.add(createVectorCombinePass()); in addFunctionSimplificationPasses()
364 MPM.add(createLoopInstSimplifyPass()); in addFunctionSimplificationPasses()
365 MPM.add(createLoopSimplifyCFGPass()); in addFunctionSimplificationPasses()
373 MPM.add(createLICMPass(LicmMssaOptCap, LicmMssaNoAccForPromotionCap, in addFunctionSimplificationPasses()
376 MPM.add(createLoopRotatePass(SizeLevel == 2 ? 0 : -1, false)); in addFunctionSimplificationPasses()
378 MPM.add(createLICMPass(LicmMssaOptCap, LicmMssaNoAccForPromotionCap, in addFunctionSimplificationPasses()
380 MPM.add(createSimpleLoopUnswitchLegacyPass(OptLevel == 3)); in addFunctionSimplificationPasses()
384 MPM.add(createCFGSimplificationPass( in addFunctionSimplificationPasses()
386 MPM.add(createInstructionCombiningPass()); in addFunctionSimplificationPasses()
389 MPM.add(createLoopFlattenPass()); // Flatten loops in addFunctionSimplificationPasses()
390 MPM.add(createLoopSimplifyCFGPass()); in addFunctionSimplificationPasses()
392 MPM.add(createLoopIdiomPass()); // Recognize idioms like memset. in addFunctionSimplificationPasses()
393 MPM.add(createIndVarSimplifyPass()); // Canonicalize indvars in addFunctionSimplificationPasses()
394 addExtensionsToPM(EP_LateLoopOptimizations, MPM); in addFunctionSimplificationPasses()
395 MPM.add(createLoopDeletionPass()); // Delete dead loops in addFunctionSimplificationPasses()
398 MPM.add(createLoopInterchangePass()); // Interchange loops in addFunctionSimplificationPasses()
401 MPM.add(createSimpleLoopUnrollPass(OptLevel, DisableUnrollLoops, in addFunctionSimplificationPasses()
403 addExtensionsToPM(EP_LoopOptimizerEnd, MPM); in addFunctionSimplificationPasses()
407 MPM.add(createSROAPass()); in addFunctionSimplificationPasses()
410 MPM.add(createMergedLoadStoreMotionPass()); // Merge ld/st in diamonds in addFunctionSimplificationPasses()
411 MPM.add(NewGVN ? createNewGVNPass() in addFunctionSimplificationPasses()
414 MPM.add(createSCCPPass()); // Constant prop with SCCP in addFunctionSimplificationPasses()
417 MPM.add(createConstraintEliminationPass()); in addFunctionSimplificationPasses()
422 MPM.add(createBitTrackingDCEPass()); // Delete dead bit computations in addFunctionSimplificationPasses()
426 MPM.add(createInstructionCombiningPass()); in addFunctionSimplificationPasses()
427 addExtensionsToPM(EP_Peephole, MPM); in addFunctionSimplificationPasses()
430 MPM.add(createDFAJumpThreadingPass()); in addFunctionSimplificationPasses()
432 MPM.add(createJumpThreadingPass()); // Thread jumps in addFunctionSimplificationPasses()
433 MPM.add(createCorrelatedValuePropagationPass()); in addFunctionSimplificationPasses()
435 MPM.add(createAggressiveDCEPass()); // Delete dead instructions in addFunctionSimplificationPasses()
437 MPM.add(createMemCpyOptPass()); // Remove memcpy / form memset in addFunctionSimplificationPasses()
440 MPM.add(createDeadStoreEliminationPass()); // Delete dead stores in addFunctionSimplificationPasses()
441 MPM.add(createLICMPass(LicmMssaOptCap, LicmMssaNoAccForPromotionCap, in addFunctionSimplificationPasses()
445 addExtensionsToPM(EP_ScalarOptimizerLate, MPM); in addFunctionSimplificationPasses()
448 MPM.add(createLoopRerollPass()); in addFunctionSimplificationPasses()
451 MPM.add(createCFGSimplificationPass( in addFunctionSimplificationPasses()
454 MPM.add(createInstructionCombiningPass()); in addFunctionSimplificationPasses()
455 addExtensionsToPM(EP_Peephole, MPM); in addFunctionSimplificationPasses()
577 legacy::PassManagerBase &MPM) { in populateModulePassManager() argument
578 MPM.add(createAnnotation2MetadataLegacyPass()); in populateModulePassManager()
581 MPM.add(createForceFunctionAttrsLegacyPass()); in populateModulePassManager()
587 MPM.add(Inliner); in populateModulePassManager()
597 MPM.add(createMergeFunctionsPass()); in populateModulePassManager()
599 MPM.add(createBarrierNoopPass()); in populateModulePassManager()
601 addExtensionsToPM(EP_EnabledOnOptLevel0, MPM); in populateModulePassManager()
603 MPM.add(createAnnotationRemarksLegacyPass()); in populateModulePassManager()
609 MPM.add(new TargetLibraryInfoWrapperPass(*LibraryInfo)); in populateModulePassManager()
611 addInitialAliasAnalysisPasses(MPM); in populateModulePassManager()
614 MPM.add(createInferFunctionAttrsLegacyPass()); in populateModulePassManager()
618 MPM.add(createAttributorLegacyPass()); in populateModulePassManager()
620 addExtensionsToPM(EP_ModuleOptimizerEarly, MPM); in populateModulePassManager()
623 MPM.add(createCallSiteSplittingPass()); in populateModulePassManager()
627 MPM.add(createFunctionSpecializationPass()); in populateModulePassManager()
629 MPM.add(createIPSCCPPass()); // IP SCCP in populateModulePassManager()
630 MPM.add(createCalledValuePropagationPass()); in populateModulePassManager()
632 MPM.add(createGlobalOptimizerPass()); // Optimize out global vars in populateModulePassManager()
634 MPM.add(createPromoteMemoryToRegisterPass()); in populateModulePassManager()
636 MPM.add(createDeadArgEliminationPass()); // Dead argument elimination in populateModulePassManager()
638 MPM.add(createInstructionCombiningPass()); // Clean up after IPCP & DAE in populateModulePassManager()
639 addExtensionsToPM(EP_Peephole, MPM); in populateModulePassManager()
640 MPM.add( in populateModulePassManager()
647 MPM.add(createGlobalsAAWrapperPass()); in populateModulePassManager()
650 MPM.add(createPruneEHPass()); // Remove dead EH info in populateModulePassManager()
653 MPM.add(Inliner); in populateModulePassManager()
660 MPM.add(createAttributorCGSCCLegacyPass()); in populateModulePassManager()
665 MPM.add(createOpenMPOptCGSCCLegacyPass()); in populateModulePassManager()
667 MPM.add(createPostOrderFunctionAttrsLegacyPass()); in populateModulePassManager()
669 addExtensionsToPM(EP_CGSCCOptimizerLate, MPM); in populateModulePassManager()
670 addFunctionSimplificationPasses(MPM); in populateModulePassManager()
675 MPM.add(createBarrierNoopPass()); in populateModulePassManager()
678 MPM.add(createPartialInliningPass()); in populateModulePassManager()
690 MPM.add(createEliminateAvailableExternallyPass()); in populateModulePassManager()
692 MPM.add(createReversePostOrderFunctionAttrsPass()); in populateModulePassManager()
701 MPM.add(createGlobalOptimizerPass()); in populateModulePassManager()
702 MPM.add(createGlobalDCEPass()); in populateModulePassManager()
711 MPM.add(createLoopVersioningLICMPass()); // Do LoopVersioningLICM in populateModulePassManager()
712 MPM.add(createLICMPass(LicmMssaOptCap, LicmMssaNoAccForPromotionCap, in populateModulePassManager()
731 MPM.add(createGlobalsAAWrapperPass()); in populateModulePassManager()
733 MPM.add(createFloat2IntPass()); in populateModulePassManager()
734 MPM.add(createLowerConstantIntrinsicsPass()); in populateModulePassManager()
737 MPM.add(createLowerMatrixIntrinsicsPass()); in populateModulePassManager()
741 MPM.add(createEarlyCSEPass(false)); in populateModulePassManager()
744 addExtensionsToPM(EP_VectorizerStart, MPM); in populateModulePassManager()
749 MPM.add(createLoopRotatePass(SizeLevel == 2 ? 0 : -1, false)); in populateModulePassManager()
755 MPM.add(createLoopDistributePass()); in populateModulePassManager()
757 addVectorPasses(MPM, /* IsFullLTO */ false); in populateModulePassManager()
760 MPM.add(createStripDeadPrototypesPass()); // Get rid of dead prototypes in populateModulePassManager()
765 MPM.add(createGlobalDCEPass()); // Remove dead fns and globals. in populateModulePassManager()
766 MPM.add(createConstantMergePass()); // Merge dup global constants in populateModulePassManager()
772 MPM.add(createHotColdSplittingPass()); in populateModulePassManager()
775 MPM.add(createIROutlinerPass()); in populateModulePassManager()
778 MPM.add(createMergeFunctionsPass()); in populateModulePassManager()
784 MPM.add(createLoopSinkPass()); in populateModulePassManager()
786 MPM.add(createInstSimplifyLegacyPass()); in populateModulePassManager()
791 MPM.add(createDivRemPairsPass()); in populateModulePassManager()
795 MPM.add(createCFGSimplificationPass( in populateModulePassManager()
798 addExtensionsToPM(EP_OptimizerLast, MPM); in populateModulePassManager()
800 MPM.add(createAnnotationRemarksLegacyPass()); in populateModulePassManager()
865 legacy::PassManagerBase *MPM = unwrap(PM); in LLVMPassManagerBuilderPopulateModulePassManager() local
866 Builder->populateModulePassManager(*MPM); in LLVMPassManagerBuilderPopulateModulePassManager()