[llvm-commits] CVS: llvm/include/llvm/Transforms/Scalar.h

Nate Begeman natebegeman at mac.com
Mon Oct 18 14:08:59 PDT 2004



Changes in directory llvm/include/llvm/Transforms:

Scalar.h updated: 1.46 -> 1.47
---
Log message:

Initial implementation of the strength reduction for GEP instructions in
loops.  This optimization is not turned on by default yet, but may be run
with the opt tool's -loop-reduce flag.  There are many FIXMEs listed in the
code that will make it far more applicable to a wide range of code, but you
have to start somewhere :)

This limited version currently triggers on the following tests in the
MultiSource directory:
pcompress2: 7 times
cfrac: 5 times
anagram: 2 times
ks: 6 times
yacr2: 2 times


---
Diffs of the changes:  (+6 -1)

Index: llvm/include/llvm/Transforms/Scalar.h
diff -u llvm/include/llvm/Transforms/Scalar.h:1.46 llvm/include/llvm/Transforms/Scalar.h:1.47
--- llvm/include/llvm/Transforms/Scalar.h:1.46	Sun Sep 19 23:41:39 2004
+++ llvm/include/llvm/Transforms/Scalar.h	Mon Oct 18 16:08:12 2004
@@ -141,6 +141,12 @@
 //
 FunctionPass *createLICMPass();
 
+//===----------------------------------------------------------------------===//
+//
+// LoopStrengthReduce - This pass is strength reduces GEP instructions that use
+// a loop's canonical induction variable as one of their indices.
+//
+FunctionPass *createLoopStrengthReducePass();
 
 //===----------------------------------------------------------------------===//
 //
@@ -155,7 +161,6 @@
 //
 FunctionPass *createLoopUnrollPass();
 
-
 //===----------------------------------------------------------------------===//
 //
 // This pass is used to promote memory references to be register references.  A






More information about the llvm-commits mailing list