diff options
| author | David Blaikie <dblaikie@gmail.com> | 2019-08-07 22:05:33 +0000 |
|---|---|---|
| committer | David Blaikie <dblaikie@gmail.com> | 2019-08-07 22:05:33 +0000 |
| commit | 77ddf6af2b20105bffaabe93a7ecff40dc0707ee (patch) | |
| tree | cc2748473663967d5af6b394d0f553765890aa5d | |
| parent | 72c940417aa56bbdc08d6f731b22dfa85d32b630 (diff) | |
| download | bcm5719-llvm-77ddf6af2b20105bffaabe93a7ecff40dc0707ee.tar.gz bcm5719-llvm-77ddf6af2b20105bffaabe93a7ecff40dc0707ee.zip | |
Add a test demonstrating DWARF parse failures are not causing lld to exit non-zero
This bug was/is masking other issues - committing this to demonstrate
the problem/track fixing it.
llvm-svn: 368220
| -rw-r--r-- | lld/test/ELF/gdb-index-parse-fail.s | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/lld/test/ELF/gdb-index-parse-fail.s b/lld/test/ELF/gdb-index-parse-fail.s new file mode 100644 index 00000000000..2f4c00795b7 --- /dev/null +++ b/lld/test/ELF/gdb-index-parse-fail.s @@ -0,0 +1,30 @@ +# REQUIRES: x86 +# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux %s -o %t1.o +# RUN: ld.lld --gdb-index %t1.o -o %t 2>&1 | FileCheck %s + +# FIXME: ld.lld should return non-zero (add a "NOT" to start once this bug is fixed) + +# CHECK: error: invalid contribution to string offsets table + +.section .debug_abbrev,"",@progbits + .byte 1 # Abbreviation Code + .byte 17 # DW_TAG_compile_unit + .byte 0 # DW_CHILDREN_no + .byte 114 # DW_AT_str_offsets_base + .byte 23 # DW_FORM_sec_offset + .byte 0 # EOM(1) + .byte 0 # EOM(2) + .byte 0 # EOM(3) + +.section .debug_info,"",@progbits + .long .Lunit_end0-.Lunit_begin0 # Length of Unit +.Lunit_begin0: + .short 5 # DWARF version number + .byte 1 # DWARF Unit Type + .byte 8 # Address Size (in bytes) + .long .debug_abbrev # Offset Into Abbrev. Section + + .byte 1 # Abbrev [1] 0xc:0x43 DW_TAG_compile_unit + .long 0 # DW_AT_str_offsets_base +.Lunit_end0: + |

