diff options
author | Bill Wendling <isanbard@gmail.com> | 2009-06-01 20:18:46 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2009-06-01 20:18:46 +0000 |
commit | caa5a11d3ed679347488cdcd4ed9be5c65d9b671 (patch) | |
tree | 71763a6626a52f9c27a4d30e99948528450ac8de /lib | |
parent | e7540d6486731a8c0336ff794f5bbce21e386a64 (diff) | |
download | external_llvm-caa5a11d3ed679347488cdcd4ed9be5c65d9b671.zip external_llvm-caa5a11d3ed679347488cdcd4ed9be5c65d9b671.tar.gz external_llvm-caa5a11d3ed679347488cdcd4ed9be5c65d9b671.tar.bz2 |
Accidental commit. This isn't ready for prime time just yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72699 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 6b6d3b3..25217b0 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -969,6 +969,12 @@ DbgScope *DwarfDebug::getOrCreateScope(GlobalVariable *V) { DbgScope *Parent = NULL; DIBlock Block(V); + // Don't create a new scope if we already created one for an inlined function. + DenseMap<const GlobalVariable *, DbgScope *>::iterator + II = AbstractInstanceRootMap.find(V); + if (II != AbstractInstanceRootMap.end()) + return LexicalScopeStack.back(); + if (!Block.isNull()) { DIDescriptor ParentDesc = Block.getContext(); Parent = @@ -1024,8 +1030,6 @@ void DwarfDebug::ConstructDbgScope(DbgScope *ParentScope, AddLabel(Die, dwarf::DW_AT_high_pc, dwarf::DW_FORM_addr, DWLabel("func_end", SubprogramCount)); - // Add the scope's contents. - ConstructDbgScope(ConcreteInst, StartID, EndID, Die, Unit); ParentDie->AddChild(Die); } |