diff options
author | David Blaikie <dblaikie@gmail.com> | 2014-03-27 20:45:58 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2014-03-27 20:45:58 +0000 |
commit | 7400a979521a70be4d69071271e4543014fbfcf5 (patch) | |
tree | 8ec8ed8cb7e1915b48136bb97b292a0ed8f45efe /llvm/test | |
parent | 70bd1fd22f801fab4b01d7e0dd22d6fb927c8fcf (diff) | |
download | bcm5719-llvm-7400a979521a70be4d69071271e4543014fbfcf5.tar.gz bcm5719-llvm-7400a979521a70be4d69071271e4543014fbfcf5.zip |
DebugInfo: Support for compressed debug info sections
1) When creating a .debug_* section and instead create a .zdebug_
section.
2) When creating a fragment in a .zdebug_* section, make it a compressed
fragment.
3) When computing the size of a compressed section, compress the data
and use the size of the compressed data.
4) Emit the compressed bytes.
Also, check that only if a section has a compressed fragment, then that
is the only fragment in the section.
Assert-fail if the fragment's data is modified after it is compressed.
Initial review on llvm-commits by Eric Christopher and Rafael Espindola.
llvm-svn: 204958
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/MC/ELF/compression.s | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/llvm/test/MC/ELF/compression.s b/llvm/test/MC/ELF/compression.s new file mode 100644 index 00000000000..0293a3c9c57 --- /dev/null +++ b/llvm/test/MC/ELF/compression.s @@ -0,0 +1,18 @@ +// RUN: llvm-mc -filetype=obj -compress-debug-sections -triple x86_64-pc-linux-gnu %s -o - | llvm-objdump -s - | FileCheck %s + +// CHECK: Contents of section .zdebug_line: +// Check for the 'ZLIB' file magic at the start of the section +// CHECK-NEXT: ZLIB +// We shouldn't compress the debug_frame section, since it can be relaxed +// CHECK: Contents of section .debug_frame +// CHECK-NOT: ZLIB + + .section .debug_line,"",@progbits + .text +foo: + .cfi_startproc + .file 1 "Driver.ii" + .loc 1 2 0 + nop + .cfi_endproc + .cfi_sections .debug_frame |