[WinEH] Improve fatal error message about failed demotion
authorReid Kleckner <reid@kleckner.net>
Wed, 6 May 2015 18:45:24 +0000 (18:45 +0000)
committerReid Kleckner <reid@kleckner.net>
Wed, 6 May 2015 18:45:24 +0000 (18:45 +0000)
llvm-svn: 236626

llvm/lib/CodeGen/WinEHPrepare.cpp

index 2c72a55..f9497a3 100644 (file)
@@ -1732,7 +1732,12 @@ Value *WinEHFrameVariableMaterializer::materializeValueFor(Value *V) {
   }
 
   if (isa<Instruction>(V) || isa<Argument>(V)) {
-    errs() << "Failed to demote instruction used in exception handler:\n";
+    Function *Parent = isa<Instruction>(V)
+                           ? cast<Instruction>(V)->getParent()->getParent()
+                           : cast<Argument>(V)->getParent();
+    errs()
+        << "Failed to demote instruction used in exception handler of function "
+        << GlobalValue::getRealLinkageName(Parent->getName()) << ":\n";
     errs() << "  " << *V << '\n';
     report_fatal_error("WinEHPrepare failed to demote instruction");
   }