diff options
author | Dan Gohman <gohman@apple.com> | 2010-11-17 21:41:58 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2010-11-17 21:41:58 +0000 |
commit | dc0e8fb9f9512622f55f73e1a434caa5c0915694 (patch) | |
tree | 4c54511e2f32e9fee469b679e6e7867e75bab985 /include | |
parent | 05646099a0b7ebd97571354d658a142e4e4c94c7 (diff) | |
download | external_llvm-dc0e8fb9f9512622f55f73e1a434caa5c0915694.zip external_llvm-dc0e8fb9f9512622f55f73e1a434caa5c0915694.tar.gz external_llvm-dc0e8fb9f9512622f55f73e1a434caa5c0915694.tar.bz2 |
Move SCEV::dominates and properlyDominates to ScalarEvolution.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119570 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Analysis/ScalarEvolution.h | 24 | ||||
-rw-r--r-- | include/llvm/Analysis/ScalarEvolutionExpressions.h | 28 |
2 files changed, 8 insertions, 44 deletions
diff --git a/include/llvm/Analysis/ScalarEvolution.h b/include/llvm/Analysis/ScalarEvolution.h index 333b11c..30b019c 100644 --- a/include/llvm/Analysis/ScalarEvolution.h +++ b/include/llvm/Analysis/ScalarEvolution.h @@ -99,14 +99,6 @@ namespace llvm { /// indirect operand. virtual bool hasOperand(const SCEV *Op) const = 0; - /// dominates - Return true if elements that makes up this SCEV dominates - /// the specified basic block. - virtual bool dominates(BasicBlock *BB, DominatorTree *DT) const = 0; - - /// properlyDominates - Return true if elements that makes up this SCEV - /// properly dominate the specified basic block. - virtual bool properlyDominates(BasicBlock *BB, DominatorTree *DT) const = 0; - /// print - Print out the internal representation of this scalar to the /// specified stream. This should really only be used for debugging /// purposes. @@ -150,14 +142,6 @@ namespace llvm { virtual void print(raw_ostream &OS) const; virtual bool hasOperand(const SCEV *Op) const; - virtual bool dominates(BasicBlock *BB, DominatorTree *DT) const { - return true; - } - - virtual bool properlyDominates(BasicBlock *BB, DominatorTree *DT) const { - return true; - } - /// Methods for support type inquiry through isa, cast, and dyn_cast: static inline bool classof(const SCEVCouldNotCompute *S) { return true; } static bool classof(const SCEV *S); @@ -699,6 +683,14 @@ namespace llvm { /// to compute the value of the expression at any particular loop iteration. bool hasComputableLoopEvolution(const SCEV *S, const Loop *L); + /// dominates - Return true if elements that makes up the given SCEV + /// dominate the specified basic block. + bool dominates(const SCEV *S, BasicBlock *BB) const; + + /// properlyDominates - Return true if elements that makes up the given SCEV + /// properly dominate the specified basic block. + bool properlyDominates(const SCEV *S, BasicBlock *BB) const; + virtual bool runOnFunction(Function &F); virtual void releaseMemory(); virtual void getAnalysisUsage(AnalysisUsage &AU) const; diff --git a/include/llvm/Analysis/ScalarEvolutionExpressions.h b/include/llvm/Analysis/ScalarEvolutionExpressions.h index 8cb533a..4d95635 100644 --- a/include/llvm/Analysis/ScalarEvolutionExpressions.h +++ b/include/llvm/Analysis/ScalarEvolutionExpressions.h @@ -48,14 +48,6 @@ namespace llvm { return false; } - bool dominates(BasicBlock *BB, DominatorTree *DT) const { - return true; - } - - bool properlyDominates(BasicBlock *BB, DominatorTree *DT) const { - return true; - } - virtual void print(raw_ostream &OS) const; /// Methods for support type inquiry through isa, cast, and dyn_cast: @@ -84,10 +76,6 @@ namespace llvm { return Op == O || Op->hasOperand(O); } - virtual bool dominates(BasicBlock *BB, DominatorTree *DT) const; - - virtual bool properlyDominates(BasicBlock *BB, DominatorTree *DT) const; - /// Methods for support type inquiry through isa, cast, and dyn_cast: static inline bool classof(const SCEVCastExpr *S) { return true; } static inline bool classof(const SCEV *S) { @@ -188,10 +176,6 @@ namespace llvm { virtual bool hasOperand(const SCEV *O) const; - bool dominates(BasicBlock *BB, DominatorTree *DT) const; - - bool properlyDominates(BasicBlock *BB, DominatorTree *DT) const; - virtual const Type *getType() const { return getOperand(0)->getType(); } bool hasNoUnsignedWrap() const { return SubclassData & (1 << 0); } @@ -309,10 +293,6 @@ namespace llvm { return O == LHS || O == RHS || LHS->hasOperand(O) || RHS->hasOperand(O); } - bool dominates(BasicBlock *BB, DominatorTree *DT) const; - - bool properlyDominates(BasicBlock *BB, DominatorTree *DT) const; - virtual const Type *getType() const; void print(raw_ostream &OS) const; @@ -357,10 +337,6 @@ namespace llvm { getLoop()); } - bool dominates(BasicBlock *BB, DominatorTree *DT) const; - - bool properlyDominates(BasicBlock *BB, DominatorTree *DT) const; - /// isAffine - Return true if this is an affine AddRec (i.e., it represents /// an expressions A+B*x where A and B are loop invariant values. bool isAffine() const { @@ -496,10 +472,6 @@ namespace llvm { return false; } - bool dominates(BasicBlock *BB, DominatorTree *DT) const; - - bool properlyDominates(BasicBlock *BB, DominatorTree *DT) const; - virtual const Type *getType() const; virtual void print(raw_ostream &OS) const; |