diff options
author | Nadav Rotem <nrotem@apple.com> | 2012-10-17 18:25:06 +0000 |
---|---|---|
committer | Nadav Rotem <nrotem@apple.com> | 2012-10-17 18:25:06 +0000 |
commit | 6b94c2a09be9b526641355f009fa11656890a69c (patch) | |
tree | b8efc4cd65f1e5aa9bcb3f03d49d71cf573e46eb /llvm/lib/Transforms/IPO | |
parent | b02dcec79ee25c965dafe63ee98c9225ec30f6a1 (diff) | |
download | bcm5719-llvm-6b94c2a09be9b526641355f009fa11656890a69c.tar.gz bcm5719-llvm-6b94c2a09be9b526641355f009fa11656890a69c.zip |
Add a loop vectorizer.
llvm-svn: 166112
Diffstat (limited to 'llvm/lib/Transforms/IPO')
-rw-r--r-- | llvm/lib/Transforms/IPO/PassManagerBuilder.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp index a2862022a3b..97698caa516 100644 --- a/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp +++ b/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp @@ -176,6 +176,12 @@ void PassManagerBuilder::populateModulePassManager(PassManagerBase &MPM) { MPM.add(createIndVarSimplifyPass()); // Canonicalize indvars MPM.add(createLoopIdiomPass()); // Recognize idioms like memset. MPM.add(createLoopDeletionPass()); // Delete dead loops + + if (Vectorize) { + MPM.add(createLoopVectorizePass()); + MPM.add(createLICMPass()); + } + if (!DisableUnrollLoops) MPM.add(createLoopUnrollPass()); // Unroll small loops addExtensionsToPM(EP_LoopOptimizerEnd, MPM); |