1 # RUN: llvm-mc %s -filetype obj -triple x86_64-unknown-linux-gnu -o - \
2 # RUN: | not llvm-dwarfdump -verify - \
5 # CHECK: Verifying .debug_abbrev...
6 # CHECK-NEXT: error: Abbreviation declaration contains multiple DW_AT_stmt_list attributes.
7 # CHECK-NEXT:[1] DW_TAG_compile_unit DW_CHILDREN_no
8 # CHECK-NEXT: DW_AT_stmt_list DW_FORM_sec_offset
9 # CHECK-NEXT: DW_AT_GNU_dwo_name DW_FORM_strp
10 # CHECK-NEXT: DW_AT_stmt_list DW_FORM_strp{{[[:space:]]}}
11 # CHECK-NEXT: error: Abbreviation declaration contains multiple DW_AT_producer attributes.
12 # CHECK-NEXT:[1] DW_TAG_compile_unit DW_CHILDREN_yes
13 # CHECK-NEXT: DW_AT_GNU_dwo_name DW_FORM_GNU_str_index
14 # CHECK-NEXT: DW_AT_producer DW_FORM_GNU_str_index
15 # CHECK-NEXT: DW_AT_producer DW_FORM_data2
18 .section .debug_abbrev,"",@progbits
19 .byte 1 # Abbreviation Code
20 .byte 17 # DW_TAG_compile_unit
21 .byte 0 # DW_CHILDREN_no
22 .byte 16 # DW_AT_stmt_list
23 .byte 23 # DW_FORM_sec_offset
24 .ascii "\260B" # DW_AT_GNU_dwo_name
25 .byte 14 # DW_FORM_strp
26 .byte 16 # DW_AT_stmt_list -- Error: Abbreviation declaration contains multiple DW_AT_stmt_list attributes.
27 .byte 14 # DW_FORM_strp
31 .section .debug_abbrev.dwo,"e",@progbits
32 .byte 1 # Abbreviation Code
33 .byte 17 # DW_TAG_compile_unit
34 .byte 1 # DW_CHILDREN_yes
35 .ascii "\260B" # DW_AT_GNU_dwo_name
36 .ascii "\202>" # DW_FORM_GNU_str_index
37 .byte 37 # DW_AT_producer
38 .ascii "\202>" # DW_FORM_GNU_str_index
39 .byte 37 # DW_AT_producer -- Error: Abbreviation declaration contains multiple DW_AT_producer attributes.
40 .byte 5 # DW_FORM_data1