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
14 lines
360 B
Plaintext
14 lines
360 B
Plaintext
# REQUIRES: zlib
|
|
|
|
# RUN: yaml2obj %p/Inputs/compress-debug-sections.yaml -o %t.o
|
|
# RUN: llvm-objcopy --compress-debug-sections %t.o %t-compressed.o
|
|
# RUN: llvm-readobj -s %t-compressed.o | FileCheck %s
|
|
|
|
# CHECK: Name: .debug_foo
|
|
# CHECK-NEXT: Type: SHT_PROGBITS
|
|
# CHECK-NEXT: Flags [
|
|
# CHECK-NEXT: SHF_COMPRESSED
|
|
# CHECK-NEXT: ]
|
|
# CHECK-NOT: Name: .debug_foo
|
|
|