From 3280f7bd557250a448eb56edbddfc90c94a406e6 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sun, 18 Apr 2004 22:46:08 +0000 Subject: [PATCH] Move isLoopInvariant to the Loop class git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13051 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/Scalar/LICM.cpp | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/lib/Transforms/Scalar/LICM.cpp b/lib/Transforms/Scalar/LICM.cpp index a02b66b20d6..13d8a53b519 100644 --- a/lib/Transforms/Scalar/LICM.cpp +++ b/lib/Transforms/Scalar/LICM.cpp @@ -176,14 +176,6 @@ namespace { return CurAST->getAliasSetForPointer(V, 0).isMod(); } - /// isLoopInvariant - Return true if the specified value is loop invariant - /// - inline bool isLoopInvariant(Value *V) { - if (Instruction *I = dyn_cast(V)) - return !CurLoop->contains(I->getParent()); - return true; // All non-instructions are loop invariant - } - bool canSinkOrHoistInst(Instruction &I); bool isLoopInvariantInst(Instruction &I); bool isNotUsedInLoop(Instruction &I); @@ -421,7 +413,7 @@ bool LICM::isNotUsedInLoop(Instruction &I) { bool LICM::isLoopInvariantInst(Instruction &I) { // The instruction is loop invariant if all of its operands are loop-invariant for (unsigned i = 0, e = I.getNumOperands(); i != e; ++i) - if (!isLoopInvariant(I.getOperand(i))) + if (!CurLoop->isLoopInvariant(I.getOperand(i))) return false; // If we got this far, the instruction is loop invariant! @@ -714,7 +706,7 @@ void LICM::findPromotableValuesInLoop( // set, if the pointer is loop invariant, if if we are not eliminating any // volatile loads or stores. if (!AS.isForwardingAliasSet() && AS.isMod() && AS.isMustAlias() && - !AS.isVolatile() && isLoopInvariant(AS.begin()->first)) { + !AS.isVolatile() && CurLoop->isLoopInvariant(AS.begin()->first)) { assert(AS.begin() != AS.end() && "Must alias set should have at least one pointer element in it!"); Value *V = AS.begin()->first;