From 99124cc082d8b5d5a07bb80a4a37a0a88d6fade4 Mon Sep 17 00:00:00 2001 From: Puyan Lotfi Date: Fri, 7 Sep 2018 08:10:22 +0000 Subject: [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 --- .../tools/llvm-objcopy/compress-debug-sections-default-gnu.test | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 llvm/test/tools/llvm-objcopy/compress-debug-sections-default-gnu.test (limited to 'llvm/test/tools/llvm-objcopy/compress-debug-sections-default-gnu.test') diff --git a/llvm/test/tools/llvm-objcopy/compress-debug-sections-default-gnu.test b/llvm/test/tools/llvm-objcopy/compress-debug-sections-default-gnu.test new file mode 100644 index 00000000000..9db3d3b7f9c --- /dev/null +++ b/llvm/test/tools/llvm-objcopy/compress-debug-sections-default-gnu.test @@ -0,0 +1,9 @@ +# REQUIRES: zlib + +# RUN: yaml2obj %p/Inputs/compress-debug-sections.yaml -o %t.o +# RUN: llvm-objcopy --compress-debug-sections --compress-debug-sections=zlib-gnu %t.o %t-compressed.o +# RUN: llvm-objdump -s %t-compressed.o | FileCheck %s + +# CHECK: .zdebug_foo: +# CHECK: ZLIB + -- cgit v1.2.3