diff options
-rw-r--r-- | include/llvm/Analysis/ScalarEvolutionExpressions.h | 2 | ||||
-rw-r--r-- | lib/Analysis/ScalarEvolution.cpp | 4 |
2 files changed, 6 insertions, 0 deletions
diff --git a/include/llvm/Analysis/ScalarEvolutionExpressions.h b/include/llvm/Analysis/ScalarEvolutionExpressions.h index b9bf93b8c7..af795377c2 100644 --- a/include/llvm/Analysis/ScalarEvolutionExpressions.h +++ b/include/llvm/Analysis/ScalarEvolutionExpressions.h @@ -19,6 +19,7 @@ namespace llvm { class ConstantInt; class ConstantRange; + class APInt; enum SCEVTypes { // These should be ordered in terms of increasing complexity to make the @@ -463,6 +464,7 @@ namespace llvm { /// getIntegerSCEV - Given an integer or FP type, create a constant for the /// specified signed integer value and return a SCEV for the constant. static SCEVHandle getIntegerSCEV(int Val, const Type *Ty); + static SCEVHandle getIntegerSCEV(const APInt& Val); Value *getValue() const { return V; } diff --git a/lib/Analysis/ScalarEvolution.cpp b/lib/Analysis/ScalarEvolution.cpp index f0a44c774d..52b0af4e14 100644 --- a/lib/Analysis/ScalarEvolution.cpp +++ b/lib/Analysis/ScalarEvolution.cpp @@ -460,6 +460,10 @@ SCEVHandle SCEVUnknown::getIntegerSCEV(int Val, const Type *Ty) { return SCEVUnknown::get(C); } +SCEVHandle SCEVUnknown::getIntegerSCEV(const APInt& Val) { + return SCEVUnknown::get(ConstantInt::get(Val)); +} + /// getTruncateOrZeroExtend - Return a SCEV corresponding to a conversion of the /// input value to the specified type. If the type must be extended, it is zero /// extended. |