diff --git a/lib/CodeGen/MachineVerifier.cpp b/lib/CodeGen/MachineVerifier.cpp
index 2c2b7fe..b79d68b 100644
--- a/lib/CodeGen/MachineVerifier.cpp
+++ b/lib/CodeGen/MachineVerifier.cpp
@@ -920,14 +920,15 @@
       if (DefVNI != VNI) {
         report("Live range at def has different valno", MF);
         *OS << "Valno #" << VNI->id << " is defined at " << VNI->def
-            << " where valno #" << DefVNI->id << " is live.\n";
+            << " where valno #" << DefVNI->id << " is live in " << LI << '\n';
         continue;
       }
 
       const MachineBasicBlock *MBB = LiveInts->getMBBFromIndex(VNI->def);
       if (!MBB) {
         report("Invalid definition index", MF);
-        *OS << "Valno #" << VNI->id << " is defined at " << VNI->def << '\n';
+        *OS << "Valno #" << VNI->id << " is defined at " << VNI->def
+            << " in " << LI << '\n';
         continue;
       }
 
@@ -935,13 +936,15 @@
         if (VNI->def != LiveInts->getMBBStartIdx(MBB)) {
           report("PHIDef value is not defined at MBB start", MF);
           *OS << "Valno #" << VNI->id << " is defined at " << VNI->def
-              << ", not at the beginning of BB#" << MBB->getNumber() << '\n';
+              << ", not at the beginning of BB#" << MBB->getNumber()
+              << " in " << LI << '\n';
         }
       } else {
         // Non-PHI def.
         if (!VNI->def.isDef()) {
           report("Non-PHI def must be at a DEF slot", MF);
-          *OS << "Valno #" << VNI->id << " is defined at " << VNI->def << '\n';
+          *OS << "Valno #" << VNI->id << " is defined at " << VNI->def
+              << " in " << LI << '\n';
         }
         const MachineInstr *MI = LiveInts->getInstructionFromIndex(VNI->def);
         if (!MI) {
