aboutsummaryrefslogtreecommitdiffstats
path: root/tools/opt
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-04-21 04:22:09 +0000
committerChris Lattner <sabre@nondot.org>2008-04-21 04:22:09 +0000
commitdc303126ff480903c83d393e430bf37302350359 (patch)
tree76d7e56e87eaca5d15aa4a47c1bd6cb613c326aa /tools/opt
parent195b9328ceaa4cb4e7acc47b44fcf0af88d7ff89 (diff)
downloadexternal_llvm-dc303126ff480903c83d393e430bf37302350359.zip
external_llvm-dc303126ff480903c83d393e430bf37302350359.tar.gz
external_llvm-dc303126ff480903c83d393e430bf37302350359.tar.bz2
enable jump threading pass by default. This causes no miscompilations
and can significantly shrinkify some code, particularly from C++ land. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50025 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/opt')
-rw-r--r--tools/opt/opt.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/opt/opt.cpp b/tools/opt/opt.cpp
index ca206cf..4b7dbf5 100644
--- a/tools/opt/opt.cpp
+++ b/tools/opt/opt.cpp
@@ -267,6 +267,7 @@ void AddStandardCompilePasses(PassManager &PM) {
addPass(PM, createTailDuplicationPass()); // Simplify cfg by copying code
addPass(PM, createInstructionCombiningPass()); // Cleanup for scalarrepl.
+ addPass(PM, createJumpThreadingPass()); // Thread jumps.
addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs
addPass(PM, createScalarReplAggregatesPass()); // Break up aggregate allocas
addPass(PM, createInstructionCombiningPass()); // Combine silly seq's