Include inlined function in list of processed subprograms.
authorDevang Patel <dpatel@apple.com>
Mon, 28 Jun 2010 20:53:04 +0000 (20:53 +0000)
committerDevang Patel <dpatel@apple.com>
Mon, 28 Jun 2010 20:53:04 +0000 (20:53 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107065 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/AsmPrinter/DwarfDebug.cpp

index 265296ade94dd0ef47acfa16a2516ea88fcac62a..9ff929f0b1716fdf64b9a790ce74b254a23b0d8b 100644 (file)
@@ -1386,7 +1386,6 @@ static bool isSubprogramContext(const MDNode *Context) {
 /// If there are global variables in this scope then create and insert
 /// DIEs for these variables.
 DIE *DwarfDebug::updateSubprogramScopeDIE(const MDNode *SPNode) {
-  ProcessedSPNodes.insert(SPNode);
   CompileUnit *SPCU = getCompileUnit(SPNode);
   DIE *SPDie = SPCU->getDIE(SPNode);
   assert(SPDie && "Unable to find subprogram DIE!");
@@ -1692,6 +1691,7 @@ DIE *DwarfDebug::constructScopeDIE(DbgScope *Scope) {
   if (Scope->getInlinedAt())
     ScopeDIE = constructInlinedScopeDIE(Scope);
   else if (DS.isSubprogram()) {
+    ProcessedSPNodes.insert(DS);
     if (Scope->isAbstractScope())
       ScopeDIE = getCompileUnit(DS)->getDIE(DS);
     else