aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2009-05-12 00:06:59 +0000
committerBill Wendling <isanbard@gmail.com>2009-05-12 00:06:59 +0000
commitbc12c2be1822af07c1737cdb1c2dc9b117bb6a28 (patch)
tree281b6e4d304ec92b6c0cad243ede6b563fa95cfe /lib
parent9c992f1141ac2c440f7e3016b0d5ac841fbc0c4e (diff)
downloadexternal_llvm-bc12c2be1822af07c1737cdb1c2dc9b117bb6a28.zip
external_llvm-bc12c2be1822af07c1737cdb1c2dc9b117bb6a28.tar.gz
external_llvm-bc12c2be1822af07c1737cdb1c2dc9b117bb6a28.tar.bz2
- Record that the debug info is actually used so that the label folder doesn't
blast it away. - Move InlineInfo bookkeeping to bookkeep the correct debug info object. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71519 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/CodeGen/AsmPrinter/DwarfWriter.cpp20
1 files changed, 10 insertions, 10 deletions
diff --git a/lib/CodeGen/AsmPrinter/DwarfWriter.cpp b/lib/CodeGen/AsmPrinter/DwarfWriter.cpp
index b64f14e..e9cd280 100644
--- a/lib/CodeGen/AsmPrinter/DwarfWriter.cpp
+++ b/lib/CodeGen/AsmPrinter/DwarfWriter.cpp
@@ -3619,15 +3619,6 @@ public:
// could be more elegant.
AddUInt(SPDie, DW_AT_inline, 0, DW_INL_declared_not_inlined);
- // Track the start label for this inlined function.
- DenseMap<GlobalVariable *, SmallVector<unsigned, 4> >::iterator
- I = InlineInfo.find(GV);
-
- if (I == InlineInfo.end())
- InlineInfo[GV].push_back(LabelID);
- else
- I->second.push_back(LabelID);
-
AbstractInstanceRootMap[GV] = Scope;
AbstractInstanceRootList.push_back(Scope);
}
@@ -3646,6 +3637,7 @@ public:
ConcreteScope->setDie(ScopeDie);
ConcreteScope->setStartLabelID(LabelID);
+ MMI->RecordUsedDbgLabel(LabelID);
LexicalScopeStack.back()->AddConcreteInst(ConcreteScope);
@@ -3658,6 +3650,15 @@ public:
else
SI->second.push_back(ConcreteScope);
+ // Track the start label for this inlined function.
+ DenseMap<GlobalVariable *, SmallVector<unsigned, 4> >::iterator
+ I = InlineInfo.find(GV);
+
+ if (I == InlineInfo.end())
+ InlineInfo[GV].push_back(LabelID);
+ else
+ I->second.push_back(LabelID);
+
if (TimePassesIsEnabled)
DebugTimer->stopTimer();
@@ -3687,7 +3688,6 @@ public:
assert(!Scopes.empty() && "We should have at least one debug scope!");
DbgConcreteScope *Scope = Scopes.back(); Scopes.pop_back();
unsigned ID = MMI->NextLabelID();
-
MMI->RecordUsedDbgLabel(ID);
Scope->setEndLabelID(ID);