diff options
author | David Majnemer <david.majnemer@gmail.com> | 2016-07-28 03:28:43 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2016-07-28 03:28:43 +0000 |
commit | 6e9b47bc8a52bc6a42fede54d385804700218f25 (patch) | |
tree | 5a6f4538fca27d39399673e7803c7fc4ffe8c672 /llvm/lib/Transforms/IPO/PassManagerBuilder.cpp | |
parent | 0be7155350be3f26108487f0cb10ae0b183ea5a8 (diff) | |
download | llvm-6e9b47bc8a52bc6a42fede54d385804700218f25.zip llvm-6e9b47bc8a52bc6a42fede54d385804700218f25.tar.gz llvm-6e9b47bc8a52bc6a42fede54d385804700218f25.tar.bz2 |
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
llvm-svn: 276953
Diffstat (limited to 'llvm/lib/Transforms/IPO/PassManagerBuilder.cpp')
-rw-r--r-- | llvm/lib/Transforms/IPO/PassManagerBuilder.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp index ec3973e..99fb422 100644 --- a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp +++ b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp @@ -440,6 +440,7 @@ void PassManagerBuilder::populateModulePassManager( if (OptLevel > 2) MPM.add(createArgumentPromotionPass()); // Scalarize uninlined fn args + addExtensionsToPM(EP_CGSCCOptimizerLate, MPM); addFunctionSimplificationPasses(MPM); // FIXME: This is a HACK! The inliner pass above implicitly creates a CGSCC |