diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 73aa8d81eeb..50c0feac091 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -2766,7 +2766,8 @@ void DwarfDebug::endFunction(const MachineFunction *MF) { } } } - constructScopeDIE(*AI); + if (ProcessedSPNodes.count((*AI)->getScopeNode()) == 0) + constructScopeDIE(*AI); } DIE *CurFnDIE = constructScopeDIE(CurrentFnDbgScope);