From b40c23672b769568bb5a4a98036c2620837d8d45 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Sat, 18 Apr 2009 17:57:20 +0000 Subject: [PATCH] More const qualifiers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@69451 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Analysis/LoopVR.cpp | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/lib/Analysis/LoopVR.cpp b/lib/Analysis/LoopVR.cpp index 03e424edec8..0a3d06bed7e 100644 --- a/lib/Analysis/LoopVR.cpp +++ b/lib/Analysis/LoopVR.cpp @@ -38,14 +38,14 @@ ConstantRange LoopVR::getRange(SCEVHandle S, Loop *L, ScalarEvolution &SE) { /// getRange - determine the range for a particular SCEV with a given trip count ConstantRange LoopVR::getRange(SCEVHandle S, SCEVHandle T, ScalarEvolution &SE){ - if (SCEVConstant *C = dyn_cast(S)) + if (const SCEVConstant *C = dyn_cast(S)) return ConstantRange(C->getValue()->getValue()); ConstantRange FullSet(cast(S->getType())->getBitWidth(), true); // {x,+,y,+,...z}. We detect overflow by checking the size of the set after // summing the upper and lower. - if (SCEVAddExpr *Add = dyn_cast(S)) { + if (const SCEVAddExpr *Add = dyn_cast(S)) { ConstantRange X = getRange(Add->getOperand(0), T, SE); if (X.isFullSet()) return FullSet; for (unsigned i = 1, e = Add->getNumOperands(); i != e; ++i) { @@ -67,7 +67,7 @@ ConstantRange LoopVR::getRange(SCEVHandle S, SCEVHandle T, ScalarEvolution &SE){ // {x,*,y,*,...,z}. In order to detect overflow, we use k*bitwidth where // k is the number of terms being multiplied. - if (SCEVMulExpr *Mul = dyn_cast(S)) { + if (const SCEVMulExpr *Mul = dyn_cast(S)) { ConstantRange X = getRange(Mul->getOperand(0), T, SE); if (X.isFullSet()) return FullSet; @@ -91,7 +91,7 @@ ConstantRange LoopVR::getRange(SCEVHandle S, SCEVHandle T, ScalarEvolution &SE){ // smax(X_smax, Y_smax, ..., Z_smax)) // It doesn't matter if one of the SCEVs has FullSet because we're taking // a maximum of the minimums across all of them. - if (SCEVSMaxExpr *SMax = dyn_cast(S)) { + if (const SCEVSMaxExpr *SMax = dyn_cast(S)) { ConstantRange X = getRange(SMax->getOperand(0), T, SE); if (X.isFullSet()) return FullSet; @@ -109,7 +109,7 @@ ConstantRange LoopVR::getRange(SCEVHandle S, SCEVHandle T, ScalarEvolution &SE){ // umax(X_umax, Y_umax, ..., Z_umax)) // It doesn't matter if one of the SCEVs has FullSet because we're taking // a maximum of the minimums across all of them. - if (SCEVUMaxExpr *UMax = dyn_cast(S)) { + if (const SCEVUMaxExpr *UMax = dyn_cast(S)) { ConstantRange X = getRange(UMax->getOperand(0), T, SE); if (X.isFullSet()) return FullSet; @@ -124,7 +124,7 @@ ConstantRange LoopVR::getRange(SCEVHandle S, SCEVHandle T, ScalarEvolution &SE){ } // L udiv R. Luckily, there's only ever 2 sides to a udiv. - if (SCEVUDivExpr *UDiv = dyn_cast(S)) { + if (const SCEVUDivExpr *UDiv = dyn_cast(S)) { ConstantRange L = getRange(UDiv->getLHS(), T, SE); ConstantRange R = getRange(UDiv->getRHS(), T, SE); if (L.isFullSet() && R.isFullSet()) return FullSet; @@ -158,34 +158,34 @@ ConstantRange LoopVR::getRange(SCEVHandle S, SCEVHandle T, ScalarEvolution &SE){ // ConstantRange already implements the cast operators. - if (SCEVZeroExtendExpr *ZExt = dyn_cast(S)) { + if (const SCEVZeroExtendExpr *ZExt = dyn_cast(S)) { T = SE.getTruncateOrZeroExtend(T, ZExt->getOperand()->getType()); ConstantRange X = getRange(ZExt->getOperand(), T, SE); return X.zeroExtend(cast(ZExt->getType())->getBitWidth()); } - if (SCEVSignExtendExpr *SExt = dyn_cast(S)) { + if (const SCEVSignExtendExpr *SExt = dyn_cast(S)) { T = SE.getTruncateOrZeroExtend(T, SExt->getOperand()->getType()); ConstantRange X = getRange(SExt->getOperand(), T, SE); return X.signExtend(cast(SExt->getType())->getBitWidth()); } - if (SCEVTruncateExpr *Trunc = dyn_cast(S)) { + if (const SCEVTruncateExpr *Trunc = dyn_cast(S)) { T = SE.getTruncateOrZeroExtend(T, Trunc->getOperand()->getType()); ConstantRange X = getRange(Trunc->getOperand(), T, SE); if (X.isFullSet()) return FullSet; return X.truncate(cast(Trunc->getType())->getBitWidth()); } - if (SCEVAddRecExpr *AddRec = dyn_cast(S)) { - SCEVConstant *Trip = dyn_cast(T); + if (const SCEVAddRecExpr *AddRec = dyn_cast(S)) { + const SCEVConstant *Trip = dyn_cast(T); if (!Trip) return FullSet; if (AddRec->isAffine()) { SCEVHandle StartHandle = AddRec->getStart(); SCEVHandle StepHandle = AddRec->getOperand(1); - SCEVConstant *Step = dyn_cast(StepHandle); + const SCEVConstant *Step = dyn_cast(StepHandle); if (!Step) return FullSet; uint32_t ExWidth = 2 * Trip->getValue()->getBitWidth(); @@ -196,8 +196,8 @@ ConstantRange LoopVR::getRange(SCEVHandle S, SCEVHandle T, ScalarEvolution &SE){ SCEVHandle EndHandle = SE.getAddExpr(StartHandle, SE.getMulExpr(T, StepHandle)); - SCEVConstant *Start = dyn_cast(StartHandle); - SCEVConstant *End = dyn_cast(EndHandle); + const SCEVConstant *Start = dyn_cast(StartHandle); + const SCEVConstant *End = dyn_cast(EndHandle); if (!Start || !End) return FullSet; const APInt &StartInt = Start->getValue()->getValue();