llvm.org GIT mirror llvm / 22e3ed1
Add EP_CGSCCOptimizerLate extension point to PassManagerBuilder The EP_CGSCCOptimizerLate extension point allows adding CallGraphSCC passes at the end of the main CallGraphSCC passes and before any function simplification passes run by CGPassManager. Patch by Gor Nishanov! Differential Revision: https://reviews.llvm.org/D22897 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@276953 91177308-0d34-0410-b5e6-96231b3b80d8 David Majnemer 3 years ago
2 changed file(s) with 6 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
9999 /// peephole optimizations similar to the instruction combiner. These passes
100100 /// will be inserted after each instance of the instruction combiner pass.
101101 EP_Peephole,
102
103 /// EP_CGSCCOptimizerLate - This extension point allows adding CallGraphSCC
104 /// passes at the end of the main CallGraphSCC passes and before any
105 /// function simplification passes run by CGPassManager.
106 EP_CGSCCOptimizerLate,
102107 };
103108
104109 /// The Optimization Level - Specify the basic optimization level.
439439 if (OptLevel > 2)
440440 MPM.add(createArgumentPromotionPass()); // Scalarize uninlined fn args
441441
442 addExtensionsToPM(EP_CGSCCOptimizerLate, MPM);
442443 addFunctionSimplificationPasses(MPM);
443444
444445 // FIXME: This is a HACK! The inliner pass above implicitly creates a CGSCC