[llvm-commits] CVS: llvm/include/llvm/Transforms/Scalar.h
Evan Cheng
evan.cheng at apple.com
Mon Mar 13 15:14:35 PST 2006
Changes in directory llvm/include/llvm/Transforms:
Scalar.h updated: 1.60 -> 1.61
---
Log message:
Added target lowering hooks which LSR consults to make more intelligent
transformation decisions.
---
Diffs of the changes: (+8 -2)
Scalar.h | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
Index: llvm/include/llvm/Transforms/Scalar.h
diff -u llvm/include/llvm/Transforms/Scalar.h:1.60 llvm/include/llvm/Transforms/Scalar.h:1.61
--- llvm/include/llvm/Transforms/Scalar.h:1.60 Tue Nov 22 16:14:23 2005
+++ llvm/include/llvm/Transforms/Scalar.h Mon Mar 13 17:14:23 2006
@@ -15,6 +15,8 @@
#ifndef LLVM_TRANSFORMS_SCALAR_H
#define LLVM_TRANSFORMS_SCALAR_H
+#include <cstdlib>
+
namespace llvm {
class ModulePass;
@@ -22,6 +24,7 @@
class GetElementPtrInst;
class PassInfo;
class TerminatorInst;
+class TargetLowering;
//===----------------------------------------------------------------------===//
//
@@ -132,9 +135,12 @@
// a loop's canonical induction variable as one of their indices. The
// MaxTargetAMSize is the largest element size that the target architecture
// can handle in its addressing modes. Power of two multipliers less than or
-// equal to this value are not reduced.
+// equal to this value are not reduced. It also takes an optional second
+// parameter used to consult the target machine whether certain transformations
+// are profitable.
//
-FunctionPass *createLoopStrengthReducePass(unsigned MaxTargetAMSize = 1);
+FunctionPass *createLoopStrengthReducePass(unsigned MaxTargetAMSize = 1,
+ const TargetLowering *TLI = NULL);
//===----------------------------------------------------------------------===//
//
More information about the llvm-commits
mailing list