DebugInfo: Attach DW_AT_inline to inlined subprograms at DIE-construction time rather...
authorDavid Blaikie <dblaikie@gmail.com>
Mon, 12 May 2014 21:50:44 +0000 (21:50 +0000)
committerDavid Blaikie <dblaikie@gmail.com>
Mon, 12 May 2014 21:50:44 +0000 (21:50 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208636 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/AsmPrinter/DwarfDebug.cpp

index 5f0f208e8738bb10abfce4b74013f8c4d2c6e885..bbd00eab7f763945a35115bb73110150098a58ec 100644 (file)
@@ -495,6 +495,7 @@ DwarfDebug::constructInlinedScopeDIE(DwarfCompileUnit &TheCU,
   }
 
   InlinedSubprogramDIEs.insert(OriginDIE);
+  TheCU.addUInt(*OriginDIE, dwarf::DW_AT_inline, None, dwarf::DW_INL_inlined);
 
   // Add the call site information to the DIE.
   DILocation DL(Scope->getInlinedAt());
@@ -857,10 +858,6 @@ void DwarfDebug::beginModule() {
 
 // Attach DW_AT_inline attribute with inlined subprogram DIEs.
 void DwarfDebug::computeInlinedDIEs() {
-  // Attach DW_AT_inline attribute with inlined subprogram DIEs.
-  for (DIE *ISP : InlinedSubprogramDIEs)
-    FirstCU->addUInt(*ISP, dwarf::DW_AT_inline, None, dwarf::DW_INL_inlined);
-
   for (const auto &AI : AbstractSPDies) {
     DIE &ISP = *AI.second;
     if (InlinedSubprogramDIEs.count(&ISP))