llvm/lib/CodeGen/AsmPrinter
David Blaikie f49ead7098 Provide gmlt-like inline scope information in the skeleton CU to facilitate symbolication without needing the .dwo files
Clang -gsplit-dwarf self-host -O0, binary increases by 0.0005%, -O2,
binary increases by 25%.

A large binary inside Google, split-dwarf, -O0, and other internal flags
(GDB index, etc) increases by 1.8%, optimized build is 35%.

The size impact may be somewhat greater in .o files (I haven't measured
that much - since the linked executable -O0 numbers seemed low enough)
due to relocations. These relocations could be removed if we taught the
llvm-symbolizer to handle indexed addressing in the .o file (GDB can't
cope with this just yet, but GDB won't be reading this info anyway).
Also debug_ranges could be shared between .o and .dwo, though ideally
debug_ranges would get a schema that could used index(+offset)
addressing, and move to the .dwo file, then we'd be back to sharing
addresses in the address pool again.

But for now, these sizes seem small enough to go ahead with this.

Verified that no other DW_TAGs are produced into the .o file other than
subprograms and inlined_subroutines.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@221306 91177308-0d34-0410-b5e6-96231b3b80d8
2014-11-04 22:12:25 +00:00
..
AddressPool.cpp DWARF Type Units: Avoid emitting type units under fission if the type requires an address. 2014-04-26 17:27:38 +00:00
AddressPool.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
ARMException.cpp Revert r221150, as it broke sanitizer tests 2014-11-03 12:19:03 +00:00
AsmPrinter.cpp CodeGen: Enable DWARF emission for MS ABI targets 2014-11-04 08:03:31 +00:00
AsmPrinterDwarf.cpp Remove the TargetMachine forwards for TargetSubtargetInfo based 2014-08-04 21:25:23 +00:00
AsmPrinterHandler.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
AsmPrinterInlineAsm.cpp [asan-assembly-instrumentation] Added CFI directives to the generated instrumentation code. 2014-09-10 09:45:49 +00:00
ByteStreamer.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
CMakeLists.txt Move DwarfCompileUnit from DwarfUnit.h to its own header (DwarfCompileUnit.h) 2014-10-04 15:49:50 +00:00
DbgValueHistoryCalculator.cpp DbgValueHistoryCalculator: Store modified registers in a BitVector instead of std::set. 2014-10-06 15:31:04 +00:00
DbgValueHistoryCalculator.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DebugLocEntry.h Move the complex address expression out of DIVariable and into an extra 2014-10-01 18:55:02 +00:00
DebugLocList.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DIE.cpp Make AsmPrinter::EmitLabelOffsetDifference a static helper and simplify. 2014-10-21 00:25:49 +00:00
DIE.h Fix some cases where StringRef was being passed by const reference. Remove const from some other StringRefs since its implicitly const already. 2014-08-30 16:48:02 +00:00
DIEHash.cpp Fix typos in comments, NFC 2014-08-29 21:53:01 +00:00
DIEHash.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
DwarfAccelTable.cpp Remove the unused string section symbol parameter from DwarfFile::emitStrings 2014-09-11 21:12:48 +00:00
DwarfAccelTable.h Remove the unused string section symbol parameter from DwarfFile::emitStrings 2014-09-11 21:12:48 +00:00
DwarfCFIException.cpp Revert r221150, as it broke sanitizer tests 2014-11-03 12:19:03 +00:00
DwarfCompileUnit.cpp Provide gmlt-like inline scope information in the skeleton CU to facilitate symbolication without needing the .dwo files 2014-11-04 22:12:25 +00:00
DwarfCompileUnit.h Provide gmlt-like inline scope information in the skeleton CU to facilitate symbolication without needing the .dwo files 2014-11-04 22:12:25 +00:00
DwarfDebug.cpp Provide gmlt-like inline scope information in the skeleton CU to facilitate symbolication without needing the .dwo files 2014-11-04 22:12:25 +00:00
DwarfDebug.h Move cross-unit DIE caching to the DwarfFile level, so it doesn't interfere with fission-gmlt data and produce skeleton<>full unit cross referencing. 2014-11-04 22:12:18 +00:00
DwarfException.h CodeGen: split out the Win64Exception emitter 2014-09-01 23:48:34 +00:00
DwarfFile.cpp Sink dwarf unit length emission down into DwarfUnit::emitHeader 2014-11-01 23:59:23 +00:00
DwarfFile.h Move cross-unit DIE caching to the DwarfFile level, so it doesn't interfere with fission-gmlt data and produce skeleton<>full unit cross referencing. 2014-11-04 22:12:18 +00:00
DwarfStringPool.cpp Remove the unused string section symbol parameter from DwarfFile::emitStrings 2014-09-11 21:12:48 +00:00
DwarfStringPool.h Remove the unused string section symbol parameter from DwarfFile::emitStrings 2014-09-11 21:12:48 +00:00
DwarfUnit.cpp Provide gmlt-like inline scope information in the skeleton CU to facilitate symbolication without needing the .dwo files 2014-11-04 22:12:25 +00:00
DwarfUnit.h Provide gmlt-like inline scope information in the skeleton CU to facilitate symbolication without needing the .dwo files 2014-11-04 22:12:25 +00:00
EHStreamer.cpp CodeGen: refactor DwarfException 2014-06-11 01:19:03 +00:00
EHStreamer.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
ErlangGCPrinter.cpp Remove the TargetMachine forwards for TargetSubtargetInfo based 2014-08-04 21:25:23 +00:00
LLVMBuild.txt Add proper dependencies to LLVMBuild.txt in llvm/lib. 2013-12-10 05:39:34 +00:00
Makefile make -fno-rtti the default unless a directory builds with REQUIRES_RTTI. 2010-01-24 20:43:08 +00:00
OcamlGCPrinter.cpp Remove the TargetMachine forwards for TargetSubtargetInfo based 2014-08-04 21:25:23 +00:00
Win64Exception.cpp CodeGen: split out the Win64Exception emitter 2014-09-01 23:48:34 +00:00
Win64Exception.h CodeGen: split out the Win64Exception emitter 2014-09-01 23:48:34 +00:00
WinCodeViewLineTables.cpp Fix PR21189 -- Emit symbol subsection required to debug LLVM-built binaries with VS2012+ 2014-10-24 01:27:45 +00:00
WinCodeViewLineTables.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00