aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2011-01-02 18:53:08 +0000
committerChris Lattner <sabre@nondot.org>2011-01-02 18:53:08 +0000
commit81a866d615d6e4ee8dcbd49268d2cfb174f5155b (patch)
tree3b6e27cc082bbea61f0365b4e93bf6b504917372
parent83fc584ea811aca780d965258c49db72a3ee8b1d (diff)
downloadexternal_llvm-81a866d615d6e4ee8dcbd49268d2cfb174f5155b.zip
external_llvm-81a866d615d6e4ee8dcbd49268d2cfb174f5155b.tar.gz
external_llvm-81a866d615d6e4ee8dcbd49268d2cfb174f5155b.tar.bz2
make inSubLoop much more efficient.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122703 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Transforms/Scalar/LICM.cpp5
1 files changed, 1 insertions, 4 deletions
diff --git a/lib/Transforms/Scalar/LICM.cpp b/lib/Transforms/Scalar/LICM.cpp
index 4a80376..ba75c6f 100644
--- a/lib/Transforms/Scalar/LICM.cpp
+++ b/lib/Transforms/Scalar/LICM.cpp
@@ -131,10 +131,7 @@ namespace {
///
bool inSubLoop(BasicBlock *BB) {
assert(CurLoop->contains(BB) && "Only valid if BB is IN the loop");
- for (Loop::iterator I = CurLoop->begin(), E = CurLoop->end(); I != E; ++I)
- if ((*I)->contains(BB))
- return true; // A subloop actually contains this block!
- return false;
+ return LI->getLoopFor(BB) != CurLoop;
}
/// sink - When an instruction is found to only be used outside of the loop,