summaryrefslogtreecommitdiff
path: root/include/llvm/Analysis/ScalarEvolutionExpressions.h
diff options
context:
space:
mode:
authorEd Schouten <ed@FreeBSD.org>2009-07-04 13:58:26 +0000
committerEd Schouten <ed@FreeBSD.org>2009-07-04 13:58:26 +0000
commit18f153bdb9db52e7089a2d5293b96c45a3124a26 (patch)
tree84360c8989c912127a383af37c4b1aa5767bd16e /include/llvm/Analysis/ScalarEvolutionExpressions.h
parentf859468f5a21b6952ab62917777f9fb3bba57003 (diff)
Diffstat (limited to 'include/llvm/Analysis/ScalarEvolutionExpressions.h')
-rw-r--r--include/llvm/Analysis/ScalarEvolutionExpressions.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/include/llvm/Analysis/ScalarEvolutionExpressions.h b/include/llvm/Analysis/ScalarEvolutionExpressions.h
index 8be1a934bc13..c54c86556c36 100644
--- a/include/llvm/Analysis/ScalarEvolutionExpressions.h
+++ b/include/llvm/Analysis/ScalarEvolutionExpressions.h
@@ -39,6 +39,8 @@ namespace llvm {
explicit SCEVConstant(ConstantInt *v) :
SCEV(scConstant), V(v) {}
public:
+ virtual void Profile(FoldingSetNodeID &ID) const;
+
ConstantInt *getValue() const { return V; }
virtual bool isLoopInvariant(const Loop *L) const {
@@ -81,6 +83,8 @@ namespace llvm {
SCEVCastExpr(unsigned SCEVTy, const SCEV* op, const Type *ty);
public:
+ virtual void Profile(FoldingSetNodeID &ID) const;
+
const SCEV* getOperand() const { return Op; }
virtual const Type *getType() const { return Ty; }
@@ -200,6 +204,8 @@ namespace llvm {
: SCEV(T), Operands(ops.begin(), ops.end()) {}
public:
+ virtual void Profile(FoldingSetNodeID &ID) const;
+
unsigned getNumOperands() const { return (unsigned)Operands.size(); }
const SCEV* getOperand(unsigned i) const {
assert(i < Operands.size() && "Operand index out of range!");
@@ -330,6 +336,8 @@ namespace llvm {
: SCEV(scUDivExpr), LHS(lhs), RHS(rhs) {}
public:
+ virtual void Profile(FoldingSetNodeID &ID) const;
+
const SCEV* getLHS() const { return LHS; }
const SCEV* getRHS() const { return RHS; }
@@ -389,6 +397,8 @@ namespace llvm {
}
public:
+ virtual void Profile(FoldingSetNodeID &ID) const;
+
const SCEV* getStart() const { return Operands[0]; }
const Loop *getLoop() const { return L; }
@@ -505,6 +515,8 @@ namespace llvm {
SCEV(scUnknown), V(v) {}
public:
+ virtual void Profile(FoldingSetNodeID &ID) const;
+
Value *getValue() const { return V; }
virtual bool isLoopInvariant(const Loop *L) const;