diff options
author | David Blaikie <dblaikie@gmail.com> | 2014-02-14 23:58:13 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2014-02-14 23:58:13 +0000 |
commit | 60e6386b876c6cffc7dcf1db173cb9feeca9cded (patch) | |
tree | 126fbfd32da1540ad88bcb977b320cb158530615 /llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h | |
parent | dfade747f00d67766c24cb7ba7bcea31f403c4f9 (diff) | |
download | bcm5719-llvm-60e6386b876c6cffc7dcf1db173cb9feeca9cded.tar.gz bcm5719-llvm-60e6386b876c6cffc7dcf1db173cb9feeca9cded.zip |
DebugInfo: Implement DW_AT_stmt_list for type units
Type units will share the statement list of their defining compile unit.
This is a tradeoff that reduces .o debug info size at the cost of some
linked debug info size (since the contents of those string tables won't
be deduplicated along with the type unit) which seems right for now.
llvm-svn: 201445
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h')
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h b/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h index bbbf3833159..2fa40cb63cb 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h @@ -539,12 +539,19 @@ private: }; class DwarfCompileUnit : public DwarfUnit { + /// The attribute index of DW_AT_stmt_list in the compile unit DIE, avoiding + /// the need to search for it in applyStmtList. + unsigned stmtListIndex; + public: DwarfCompileUnit(unsigned UID, DIE *D, DICompileUnit Node, AsmPrinter *A, DwarfDebug *DW, DwarfFile *DWU); void initStmtList(MCSymbol *DwarfLineSectionSym); + /// Apply the DW_AT_stmt_list from this compile unit to the specified DIE. + void applyStmtList(DIE &D); + /// createGlobalVariableDIE - create global variable DIE. void createGlobalVariableDIE(DIGlobalVariable GV); |