diff options
author | Chris Lattner <sabre@nondot.org> | 2011-05-22 00:20:07 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2011-05-22 00:20:07 +0000 |
commit | 817a01ffb24504f5b00fdac9d79aa034c918f28b (patch) | |
tree | 338c8255d5626d59b14eed9e0c384053cd31305a | |
parent | 92a9cb6594e22e2e273f61922226616bf0b943df (diff) | |
download | external_llvm-817a01ffb24504f5b00fdac9d79aa034c918f28b.zip external_llvm-817a01ffb24504f5b00fdac9d79aa034c918f28b.tar.gz external_llvm-817a01ffb24504f5b00fdac9d79aa034c918f28b.tar.bz2 |
switch bugpoint and liblto to PassManagerBuilder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131821 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | tools/bugpoint/bugpoint.cpp | 22 | ||||
-rw-r--r-- | tools/lto/LTOCodeGenerator.cpp | 14 |
2 files changed, 16 insertions, 20 deletions
diff --git a/tools/bugpoint/bugpoint.cpp b/tools/bugpoint/bugpoint.cpp index f9c9e18..efacd6a 100644 --- a/tools/bugpoint/bugpoint.cpp +++ b/tools/bugpoint/bugpoint.cpp @@ -22,7 +22,7 @@ #include "llvm/Support/ManagedStatic.h" #include "llvm/Support/PluginLoader.h" #include "llvm/Support/PrettyStackTrace.h" -#include "llvm/Support/StandardPasses.h" +#include "llvm/Support/PassManagerBuilder.h" #include "llvm/Support/Process.h" #include "llvm/Support/Signals.h" #include "llvm/Support/Valgrind.h" @@ -146,19 +146,17 @@ int main(int argc, char **argv) { AddToDriver PM(D); if (StandardCompileOpts) { - createStandardModulePasses(&PM, 3, - /*OptimizeSize=*/ false, - /*UnitAtATime=*/ true, - /*UnrollLoops=*/ true, - /*SimplifyLibCalls=*/ true, - /*HaveExceptions=*/ true, - createFunctionInliningPass()); + PassManagerBuilder Builder; + Builder.OptLevel = 3; + Builder.Inliner = createFunctionInliningPass(); + Builder.populateModulePassManager(PM); } - if (StandardLinkOpts) - createStandardLTOPasses(&PM, /*Internalize=*/true, - /*RunInliner=*/true, - /*VerifyEach=*/false); + if (StandardLinkOpts) { + PassManagerBuilder Builder; + Builder.populateLTOPassManager(PM, /*Internalize=*/true, + /*RunInliner=*/true); + } for (std::vector<const PassInfo*>::iterator I = PassList.begin(), diff --git a/tools/lto/LTOCodeGenerator.cpp b/tools/lto/LTOCodeGenerator.cpp index d95f354..3abd641 100644 --- a/tools/lto/LTOCodeGenerator.cpp +++ b/tools/lto/LTOCodeGenerator.cpp @@ -14,7 +14,6 @@ #include "LTOModule.h" #include "LTOCodeGenerator.h" - #include "llvm/Constants.h" #include "llvm/DerivedTypes.h" #include "llvm/Linker.h" @@ -37,7 +36,7 @@ #include "llvm/Support/CommandLine.h" #include "llvm/Support/FormattedStream.h" #include "llvm/Support/MemoryBuffer.h" -#include "llvm/Support/StandardPasses.h" +#include "llvm/Support/PassManagerBuilder.h" #include "llvm/Support/SystemUtils.h" #include "llvm/Support/ToolOutputFile.h" #include "llvm/Support/Host.h" @@ -355,9 +354,8 @@ void LTOCodeGenerator::applyScopeRestrictions() { } /// Optimize merged modules using various IPO passes -bool LTOCodeGenerator::generateObjectFile(raw_ostream& out, - std::string& errMsg) -{ +bool LTOCodeGenerator::generateObjectFile(raw_ostream &out, + std::string &errMsg) { if ( this->determineTarget(errMsg) ) return true; @@ -380,13 +378,13 @@ bool LTOCodeGenerator::generateObjectFile(raw_ostream& out, // Add an appropriate TargetData instance for this module... passes.add(new TargetData(*_target->getTargetData())); - createStandardLTOPasses(&passes, /*Internalize=*/ false, !DisableInline, - /*VerifyEach=*/ false); + PassManagerBuilder().populateLTOPassManager(passes, /*Internalize=*/ false, + !DisableInline); // Make sure everything is still good. passes.add(createVerifierPass()); - FunctionPassManager* codeGenPasses = new FunctionPassManager(mergedModule); + FunctionPassManager *codeGenPasses = new FunctionPassManager(mergedModule); codeGenPasses->add(new TargetData(*_target->getTargetData())); |