diff options
author | Chris Lattner <sabre@nondot.org> | 2008-04-21 04:31:40 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-04-21 04:31:40 +0000 |
commit | 0645b888524c089ea2377a1574ea4e54c3e8c65a (patch) | |
tree | 6834189b2cd929d472f70e1f3a70b505a49604df /llvm/tools/lto2/LTOCodeGenerator.cpp | |
parent | ba994f7cdf5d326a3bc79ba529f101c6027bf259 (diff) | |
download | bcm5719-llvm-0645b888524c089ea2377a1574ea4e54c3e8c65a.tar.gz bcm5719-llvm-0645b888524c089ea2377a1574ea4e54c3e8c65a.zip |
Add jump threading to liblto.
llvm-svn: 50028
Diffstat (limited to 'llvm/tools/lto2/LTOCodeGenerator.cpp')
-rw-r--r-- | llvm/tools/lto2/LTOCodeGenerator.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/tools/lto2/LTOCodeGenerator.cpp b/llvm/tools/lto2/LTOCodeGenerator.cpp index 4c5850acb4f..b7962be50be 100644 --- a/llvm/tools/lto2/LTOCodeGenerator.cpp +++ b/llvm/tools/lto2/LTOCodeGenerator.cpp @@ -370,7 +370,7 @@ bool LTOCodeGenerator::generateAssemblyCode(std::ostream& out, std::string& errM // The IPO passes may leave cruft around. Clean up after them. passes.add(createInstructionCombiningPass()); - + passes.add(createJumpThreadingPass()); // Thread jumps. passes.add(createScalarReplAggregatesPass()); // Break up allocas // Run a few AA driven optimizations here and now, to cleanup the code. @@ -384,6 +384,8 @@ bool LTOCodeGenerator::generateAssemblyCode(std::ostream& out, std::string& errM // Cleanup and simplify the code after the scalar optimizations. passes.add(createInstructionCombiningPass()); + passes.add(createJumpThreadingPass()); // Thread jumps. + // Delete basic blocks, which optimization passes may have killed... passes.add(createCFGSimplificationPass()); |