diff options
author | Puyan Lotfi <puyan@puyan.org> | 2018-09-07 08:10:22 +0000 |
---|---|---|
committer | Puyan Lotfi <puyan@puyan.org> | 2018-09-07 08:10:22 +0000 |
commit | 99124cc082d8b5d5a07bb80a4a37a0a88d6fade4 (patch) | |
tree | 5e4b9d4de8ab7ac93e3eaa1f6215b2e2d3e7a75d /llvm/test/tools/llvm-objcopy/Inputs | |
parent | abbb894ff58cff160f81954d794d009c3cb92eb9 (diff) | |
download | bcm5719-llvm-99124cc082d8b5d5a07bb80a4a37a0a88d6fade4.tar.gz bcm5719-llvm-99124cc082d8b5d5a07bb80a4a37a0a88d6fade4.zip |
[llvm-objcopy] Dwarf .debug section compression support (zlib, zlib-gnu).
Third Attempt:
- Alignment issues resolved.
- zlib::isAvailable() detected.
- ArrayRef misuse fixed.
Usage:
llvm-objcopy --compress-debug-sections=zlib foo.o
llvm-objcopy --compress-debug-sections=zlib-gnu foo.o
In both cases the debug section contents is compressed with zlib. In the GNU
style case the header is the "ZLIB" magic string followed by the uint64 big-
endian decompressed size. In the non-GNU mode the header is the
Elf(32|64)_Chdr.
Decompression support is coming soon.
Differential Revision: https://reviews.llvm.org/D49678
llvm-svn: 341635
Diffstat (limited to 'llvm/test/tools/llvm-objcopy/Inputs')
-rw-r--r-- | llvm/test/tools/llvm-objcopy/Inputs/compress-debug-sections.yaml | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/llvm/test/tools/llvm-objcopy/Inputs/compress-debug-sections.yaml b/llvm/test/tools/llvm-objcopy/Inputs/compress-debug-sections.yaml new file mode 100644 index 00000000000..bb1e9e6c338 --- /dev/null +++ b/llvm/test/tools/llvm-objcopy/Inputs/compress-debug-sections.yaml @@ -0,0 +1,21 @@ +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 +Sections: + - Name: .debug_foo + Type: SHT_PROGBITS + Content: 0000000000000000 + - Name: .notdebug_foo + Type: SHT_PROGBITS + Content: 0000000000000000 + - Name: .rela.debug_foo + Type: SHT_RELA + Info: .debug_foo + Relocations: + - Offset: 0x1 + Symbol: .debug_foo + Type: R_X86_64_32 +... |