diff options
author | David Blaikie <dblaikie@gmail.com> | 2014-04-23 23:46:25 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2014-04-23 23:46:25 +0000 |
commit | 27931a41e440e981514985f35155e65445381c25 (patch) | |
tree | 9337718dbc85a5514e619ab981afec3dc7760e57 /llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp | |
parent | f2505d6995f61aa8dc98b93b1c4a1a614f2643c7 (diff) | |
download | bcm5719-llvm-27931a41e440e981514985f35155e65445381c25.tar.gz bcm5719-llvm-27931a41e440e981514985f35155e65445381c25.zip |
And actually use the DwarfDebug::AccelNames to emit the names.
Fix for r207049 which would've emitted no accelerated names at all...
llvm-svn: 207051
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp')
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index af771f6a82e..b4ae7c517f7 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -1858,24 +1858,14 @@ void DwarfDebug::emitEndOfLineMatrix(unsigned SectionEnd) { // Emit visible names into a hashed accelerator table section. void DwarfDebug::emitAccelNames() { - DwarfAccelTable AT( - DwarfAccelTable::Atom(dwarf::DW_ATOM_die_offset, dwarf::DW_FORM_data4)); - for (const auto &TheU : getUnits()) { - for (const auto &GI : TheU->getAccelNames()) { - StringRef Name = GI.getKey(); - for (const DIE *D : GI.second) - AT.AddName(Name, D); - } - } - - AT.FinalizeTable(Asm, "Names"); + AccelNames.FinalizeTable(Asm, "Names"); Asm->OutStreamer.SwitchSection( Asm->getObjFileLowering().getDwarfAccelNamesSection()); MCSymbol *SectionBegin = Asm->GetTempSymbol("names_begin"); Asm->OutStreamer.EmitLabel(SectionBegin); // Emit the full data. - AT.Emit(Asm, SectionBegin, &InfoHolder); + AccelNames.Emit(Asm, SectionBegin, &InfoHolder); } // Emit objective C classes and categories into a hashed accelerator table |