From 7e608bbb5dfe4f827e64e91b0bb68a1d95d737ae Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Tue, 2 Aug 2005 02:52:02 +0000 Subject: [PATCH] add a comment, make a check more lenient git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22581 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/Scalar/LoopStrengthReduce.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/lib/Transforms/Scalar/LoopStrengthReduce.cpp b/lib/Transforms/Scalar/LoopStrengthReduce.cpp index a39ba6eda26..fcb7ad3dfde 100644 --- a/lib/Transforms/Scalar/LoopStrengthReduce.cpp +++ b/lib/Transforms/Scalar/LoopStrengthReduce.cpp @@ -71,6 +71,9 @@ namespace { const TargetData *TD; const Type *UIntPtrTy; bool Changed; + + /// MaxTargetAMSize - This is the maximum power-of-two scale value that the + /// target can handle for free with its addressing modes. unsigned MaxTargetAMSize; /// IVUsesByStride - Keep track of all uses of induction variables that we @@ -649,15 +652,14 @@ void LoopStrengthReduce::runOnLoop(Loop *L) { // compared against some value to decide loop termination. if (PN->hasOneUse()) { BinaryOperator *BO = dyn_cast(*(PN->use_begin())); - if (BO && BO->getOpcode() == Instruction::Add) - if (BO->hasOneUse()) { - if (PN == dyn_cast(*(BO->use_begin()))) { - DeadInsts.insert(BO); - // Break the cycle, then delete the PHI. - PN->replaceAllUsesWith(UndefValue::get(PN->getType())); - PN->eraseFromParent(); - } + if (BO && BO->hasOneUse()) { + if (PN == *(BO->use_begin())) { + DeadInsts.insert(BO); + // Break the cycle, then delete the PHI. + PN->replaceAllUsesWith(UndefValue::get(PN->getType())); + PN->eraseFromParent(); } + } } } DeleteTriviallyDeadInstructions(DeadInsts);