diff options
author | David Blaikie <dblaikie@gmail.com> | 2014-03-06 05:47:39 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2014-03-06 05:47:39 +0000 |
commit | ca8b562f2d4d996d5198af537ad312e544da1172 (patch) | |
tree | a5e2880426891dcfdefdc2ca042f6c23aa9cd76f /lib | |
parent | df95a940641559f6e4027af704ac7c70bac24f93 (diff) | |
download | llvm-ca8b562f2d4d996d5198af537ad312e544da1172.tar.gz llvm-ca8b562f2d4d996d5198af537ad312e544da1172.tar.bz2 llvm-ca8b562f2d4d996d5198af537ad312e544da1172.tar.xz |
DebugInfo: Tag units as having been indexed in GNU pubnames by using a DW_AT_GNU_pubnames of DW_FORM_flag(_present) rather than sec_offsets to the pubnames/types sections
This is consistent with GDB ToT and reduces the number of relocations in
(type and compile) units, substantially reducing relocations and debug
size in fission + type units builds.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203082 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 6404e4b522..1a906e1033 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -733,13 +733,7 @@ void DwarfDebug::addGnuPubAttributes(DwarfUnit *U, DIE *D) const { if (!GenerateGnuPubSections) return; - addSectionLabel(Asm, U, D, dwarf::DW_AT_GNU_pubnames, - Asm->GetTempSymbol("gnu_pubnames", U->getUniqueID()), - DwarfGnuPubNamesSectionSym); - - addSectionLabel(Asm, U, D, dwarf::DW_AT_GNU_pubtypes, - Asm->GetTempSymbol("gnu_pubtypes", U->getUniqueID()), - DwarfGnuPubTypesSectionSym); + U->addFlag(D, dwarf::DW_AT_GNU_pubnames); } // Create new DwarfCompileUnit for the given metadata node with tag |