Ignore debug values when performing MachineVerifier liveness checks. Fixes
authorCameron Zwarich <zwarich@apple.com>
Mon, 20 Dec 2010 00:08:10 +0000 (00:08 +0000)
committerCameron Zwarich <zwarich@apple.com>
Mon, 20 Dec 2010 00:08:10 +0000 (00:08 +0000)
PR8822.

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

lib/CodeGen/MachineVerifier.cpp

index f7713fd1eec17c0b774e749bdd592b441d3cad46..4025e296ce09e0b28681f96a77b9b9a6fa565096 100644 (file)
@@ -587,7 +587,9 @@ MachineVerifier::visitMachineOperand(const MachineOperand *MO, unsigned MONum) {
       return;
 
     // Check Live Variables.
-    if (MO->isUndef()) {
+    if (MI->isDebugValue()) {
+      // Liveness checks are not valid for debug values.
+    } else if (MO->isUndef()) {
       // An <undef> doesn't refer to any register, so just skip it.
     } else if (MO->isUse()) {
       regsLiveInButUnused.erase(Reg);