From 2e67937f768163ce101786ba068e6b6419481339 Mon Sep 17 00:00:00 2001 From: Duncan Sands Date: Wed, 28 Sep 2011 09:13:02 +0000 Subject: A typeid of zero means a cleanup, not a catch. This case occurs when there is both a catch and a cleanup. Correct the comment. llvm-svn: 140686 --- llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp') diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp index c3fa826c201..18b726b173d 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp @@ -649,12 +649,14 @@ void DwarfException::EmitExceptionTable() { // Used by the runtime to match the type of the thrown exception to the // type of the catch clauses or the types in the exception specification. if (VerboseAsm) { - if (Action.ValueForTypeID >= 0) + if (Action.ValueForTypeID > 0) Asm->OutStreamer.AddComment(Twine(" Catch TypeInfo ") + llvm::itostr(Action.ValueForTypeID)); - else + else if (Action.ValueForTypeID < 0) Asm->OutStreamer.AddComment(Twine(" Filter TypeInfo ") + llvm::itostr(Action.ValueForTypeID)); + else + Asm->OutStreamer.AddComment(" Cleanup"); } Asm->EmitSLEB128(Action.ValueForTypeID); -- cgit v1.2.3