summaryrefslogtreecommitdiffstats
path: root/llvm/tools/gccas/gccas.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-01-15 07:41:51 +0000
committerChris Lattner <sabre@nondot.org>2007-01-15 07:41:51 +0000
commitfaa060878b9cab4e9dead5d530a23ef13da5d46a (patch)
tree9277dc2221be435e1254a59d73e6c26b21a7bd2a /llvm/tools/gccas/gccas.cpp
parentc8dcede292a8bb6b699dd5664d3795d5839e0a15 (diff)
downloadbcm5719-llvm-faa060878b9cab4e9dead5d530a23ef13da5d46a.tar.gz
bcm5719-llvm-faa060878b9cab4e9dead5d530a23ef13da5d46a.zip
Run an instcombine pass after inlining but before scalarrepl. This allows
instcombine to clean up the code, which makes more code suitable for SRoA. This helps C++ code in particular, e.g. speeding up tramp3d by 31%. llvm-svn: 33235
Diffstat (limited to 'llvm/tools/gccas/gccas.cpp')
-rw-r--r--llvm/tools/gccas/gccas.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/tools/gccas/gccas.cpp b/llvm/tools/gccas/gccas.cpp
index 2d08f36cc83..587a6a850d8 100644
--- a/llvm/tools/gccas/gccas.cpp
+++ b/llvm/tools/gccas/gccas.cpp
@@ -102,6 +102,7 @@ void AddConfiguredTransformationPasses(PassManager &PM) {
addPass(PM, createRaisePointerReferencesPass());// Recover type information
addPass(PM, createTailDuplicationPass()); // Simplify cfg by copying code
+ addPass(PM, createInstructionCombiningPass()); // Cleanup for scalarrepl.
addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs
addPass(PM, createScalarReplAggregatesPass()); // Break up aggregate allocas
addPass(PM, createInstructionCombiningPass()); // Combine silly seq's
OpenPOWER on IntegriCloud