From: Chris Lattner Date: Sat, 1 Jan 2011 20:39:18 +0000 (+0000) Subject: turn on memset idiom recognition by default. Though there are still lots of X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=0fd8ee4995193ba8dc24a19ae11cd2614418231a;p=oota-llvm.git turn on memset idiom recognition by default. Though there are still lots of limitations, this kicks in dozens of times in the 4 specfp2000 benchmarks, and hundreds of times in the int part. It also kicks in hundreds of times in multisource. This kicks in right before loop deletion, which has the pleasant effect of deleting loops that *just* do a memset. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122664 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/Support/StandardPasses.h b/include/llvm/Support/StandardPasses.h index a608f2ceaba..7e32f1fbae7 100644 --- a/include/llvm/Support/StandardPasses.h +++ b/include/llvm/Support/StandardPasses.h @@ -145,6 +145,7 @@ namespace llvm { PM->add(createLoopUnswitchPass(OptimizeSize || OptimizationLevel < 3)); PM->add(createInstructionCombiningPass()); PM->add(createIndVarSimplifyPass()); // Canonicalize indvars + PM->add(createLoopIdiomPass()); // Recognize idioms like memset. PM->add(createLoopDeletionPass()); // Delete dead loops if (UnrollLoops) PM->add(createLoopUnrollPass()); // Unroll small loops