[LoopStrengthReduce] Don't increment iterator past the end of the BB
[oota-llvm.git] / lib / Transforms / Scalar / LoopStrengthReduce.cpp
index 9351a284c86a68ba7c0d3d6891454dd9034b1fba..6f34c9cb8cfdecf861280d0a63a92ade10e48e63 100644 (file)
@@ -4435,7 +4435,7 @@ LSRInstance::AdjustInsertPositionForExpand(BasicBlock::iterator LowestIP,
   while (isa<PHINode>(IP)) ++IP;
 
   // Ignore landingpad instructions.
-  while (IP->isEHPad()) ++IP;
+  while (!isa<TerminatorInst>(IP) && IP->isEHPad()) ++IP;
 
   // Ignore debug intrinsics.
   while (isa<DbgInfoIntrinsic>(IP)) ++IP;