summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2010-08-16 17:34:25 +0000
committerDan Gohman <gohman@apple.com>2010-08-16 17:34:25 +0000
commita573c414356567618397e324b83c9b0ec9ce10c4 (patch)
treefadade74bfffd81833c22ac6dfad3422202403e9
parenta3ae3eb6901ea74dc7c4e1f656fc8e64fe36034e (diff)
downloadbcm5719-llvm-a573c414356567618397e324b83c9b0ec9ce10c4.tar.gz
bcm5719-llvm-a573c414356567618397e324b83c9b0ec9ce10c4.zip
Revert r111031. The way LLVM defines loop invariance, the property of an
expression being loop invariant is not equivalent to the property of properly dominating the loop header. Other optimizations have also made this optimization less important. llvm-svn: 111160
-rw-r--r--llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h18
1 files changed, 0 insertions, 18 deletions
diff --git a/llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h b/llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h
index 4baaa4506c1..4213a287011 100644
--- a/llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h
+++ b/llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h
@@ -126,12 +126,6 @@ namespace llvm {
public:
virtual void print(raw_ostream &OS) const;
- virtual bool hasComputableLoopEvolution(const Loop *QL) const {
- // Not computable. A truncate of an addrec is always folded into
- // the addrec.
- return false;
- }
-
/// Methods for support type inquiry through isa, cast, and dyn_cast:
static inline bool classof(const SCEVTruncateExpr *S) { return true; }
static inline bool classof(const SCEV *S) {
@@ -281,12 +275,6 @@ namespace llvm {
}
public:
- virtual bool hasComputableLoopEvolution(const Loop *QL) const {
- // Not computable. An add of an addrec is always folded into the addrec
- // if the other operands are loop-variant or loop-computable.
- return false;
- }
-
virtual const char *getOperationStr() const { return " + "; }
virtual const Type *getType() const {
@@ -315,12 +303,6 @@ namespace llvm {
}
public:
- virtual bool hasComputableLoopEvolution(const Loop *QL) const {
- // Not computable. A mul of an addrec is always folded into the addrec
- // if the other operands are loop-variant or loop-computable.
- return false;
- }
-
virtual const char *getOperationStr() const { return " * "; }
/// Methods for support type inquiry through isa, cast, and dyn_cast:
OpenPOWER on IntegriCloud