Minor cleanup. Use dyn_cast, not isa/cast pairs. No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60623 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nick Lewycky 2008-12-06 17:57:05 +00:00
parent c3ccc1aaaf
commit 4a3136444e

View File

@ -2911,18 +2911,18 @@ bool ScalarEvolutionsImpl::potentialInfiniteLoop(SCEV *Stride, SCEV *RHS,
bool isSigned, bool trueWhenEqual) {
// Return true when the distance from RHS to maxint > Stride.
if (!isa<SCEVConstant>(Stride))
SCEVConstant *SC = dyn_cast<SCEVConstant>(Stride);
if (!SC)
return true;
SCEVConstant *SC = cast<SCEVConstant>(Stride);
if (SC->getValue()->isZero())
return true;
if (!trueWhenEqual && SC->getValue()->isOne())
return false;
if (!isa<SCEVConstant>(RHS))
SCEVConstant *R = dyn_cast<SCEVConstant>(RHS);
if (!R)
return true;
SCEVConstant *R = cast<SCEVConstant>(RHS);
if (isSigned)
return true; // XXX: because we don't have an sdiv scev.
@ -2983,7 +2983,7 @@ HowManyLessThans(SCEV *LHS, SCEV *RHS, const Loop *L,
// loop by one iteration.
//
// The loop won't actually run (m-n)/s times because the loop iterations
// won't divide evenly. For example, if you have {2,+,5} u< 10 the
// might not divide cleanly. For example, if you have {2,+,5} u< 10 the
// division would equal one, but the loop runs twice putting the
// induction variable at 12.