Make the code do what the comment says it does.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60431 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Transforms/Scalar/LoopStrengthReduce.cpp b/lib/Transforms/Scalar/LoopStrengthReduce.cpp
index 35bfae8..96ed932 100644
--- a/lib/Transforms/Scalar/LoopStrengthReduce.cpp
+++ b/lib/Transforms/Scalar/LoopStrengthReduce.cpp
@@ -598,10 +598,11 @@
   
   // If InsertLoop is not L, and InsertLoop is nested inside of L, figure out
   // the preheader of the outer-most loop where NewBase is not loop invariant.
-  while (InsertLoop && NewBase->isLoopInvariant(InsertLoop)) {
-    BaseInsertPt = InsertLoop->getLoopPreheader()->getTerminator();
-    InsertLoop = InsertLoop->getParentLoop();
-  }
+  if (L->contains(IP->getParent()))
+    while (InsertLoop && NewBase->isLoopInvariant(InsertLoop)) {
+      BaseInsertPt = InsertLoop->getLoopPreheader()->getTerminator();
+      InsertLoop = InsertLoop->getParentLoop();
+    }
   
   // If there is no immediate value, skip the next part.
   if (Imm->isZero())