Don't verify physical registers going into landing pads.
authorJakob Stoklund Olesen <stoklund@2pi.dk>
Tue, 26 Oct 2010 16:49:23 +0000 (16:49 +0000)
committerJakob Stoklund Olesen <stoklund@2pi.dk>
Tue, 26 Oct 2010 16:49:23 +0000 (16:49 +0000)
Magic is happening that we don't understand.

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

lib/CodeGen/MachineVerifier.cpp

index 9ef04c07849137a54eae60e69b989d3a62256365..2c2b7fe94d040f4e80ad172b41b34a1905152392 100644 (file)
@@ -1024,6 +1024,14 @@ void MachineVerifier::verifyLiveIntervals() {
       }
       for (;;) {
         assert(LiveInts->isLiveInToMBB(LI, MFI));
+        // We don't know how to track physregs into a landing pad.
+        if (TargetRegisterInfo::isPhysicalRegister(LI.reg) &&
+            MFI->isLandingPad()) {
+          if (&*MFI == EndMBB)
+            break;
+          ++MFI;
+          continue;
+        }
         // Check that VNI is live-out of all predecessors.
         for (MachineBasicBlock::const_pred_iterator PI = MFI->pred_begin(),
              PE = MFI->pred_end(); PI != PE; ++PI) {