Apparently, it is possible for a block with a landing pad successor to have no calls.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Fri, 4 Feb 2011 23:11:13 +0000 (23:11 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Fri, 4 Feb 2011 23:11:13 +0000 (23:11 +0000)
In that case we simply ignore the landing pad and split live ranges before the
first terminator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124907 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/LiveIntervalAnalysis.cpp

index 32c553ff12d0ff6bd3eb7d7e3a004ad487c69f25..e769df5b76dd6fbb2614072d6872d9608a823342 100644 (file)
@@ -764,7 +764,7 @@ LiveIntervals::getLastSplitPoint(const LiveInterval &li,
     if (I->getDesc().isCall())
       return I;
   }
-  assert(0 && "Block with landing pad successor contains no call instruction");
+  // The block contains no calls that can throw, so use the first terminator.
   return mbb->getFirstTerminator();
 }