diff options
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp')
| -rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 4 | 
1 files changed, 4 insertions, 0 deletions
| diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 0e55b545833..bc4333d9c1b 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -1482,6 +1482,10 @@ void DwarfDebug::ConstructCompileUnit(MDNode *N) {  void DwarfDebug::ConstructGlobalVariableDIE(MDNode *N) {    DIGlobalVariable DI_GV(N); +   +  // If debug information is malformed then ignore it. +  if (DI_GV.Verify() == false) +    return;    // Check for pre-existence.    DIE *&Slot = ModuleCU->getDieMapSlotFor(DI_GV.getNode()); | 

