84 lines · plain
1# RUN: llvm-mc -triple x86_64-pc-linux %s -filetype=obj | \2# RUN: not llvm-dwarfdump -verify - | FileCheck %s3 4# CHECK: error: Bucket 0 of Name Index @ 0x0 contains invalid value 2. Valid range is [0, 1].5 .section .debug_str,"MS",@progbits,16.Lstring_foo:7 .asciz "foo"8.Lstring_producer:9 .asciz "Hand-written dwarf"10 11 .section .debug_abbrev,"",@progbits12.Lsection_abbrev:13 .byte 1 # Abbreviation Code14 .byte 17 # DW_TAG_compile_unit15 .byte 1 # DW_CHILDREN_yes16 .byte 37 # DW_AT_producer17 .byte 14 # DW_FORM_strp18 .byte 19 # DW_AT_language19 .byte 5 # DW_FORM_data220 .byte 0 # EOM(1)21 .byte 0 # EOM(2)22 .byte 2 # Abbreviation Code23 .byte 46 # DW_TAG_subprogram24 .byte 0 # DW_CHILDREN_no25 .byte 3 # DW_AT_name26 .byte 14 # DW_FORM_strp27 .byte 63 # DW_AT_external28 .byte 25 # DW_FORM_flag_present29 .byte 0 # EOM(1)30 .byte 0 # EOM(2)31 .byte 0 # EOM(3)32 33 .section .debug_info,"",@progbits34.Lcu_begin0:35 .long .Lcu_end0-.Lcu_start0 # Length of Unit36.Lcu_start0:37 .short 4 # DWARF version number38 .long .Lsection_abbrev # Offset Into Abbrev. Section39 .byte 8 # Address Size (in bytes)40 .byte 1 # Abbrev [1] DW_TAG_compile_unit41 .long .Lstring_producer # DW_AT_producer42 .short 12 # DW_AT_language43.Ldie_foo:44 .byte 2 # Abbrev [2] DW_TAG_subprogram45 .long .Lstring_foo # DW_AT_name46 # DW_AT_external47 .byte 0 # End Of Children Mark48.Lcu_end0:49 50 .section .debug_names,"",@progbits51 .long .Lnames_end0-.Lnames_start0 # Header: contribution length52.Lnames_start0:53 .short 5 # Header: version54 .short 0 # Header: padding55 .long 1 # Header: compilation unit count56 .long 0 # Header: local type unit count57 .long 0 # Header: foreign type unit count58 .long 2 # Header: bucket count59 .long 1 # Header: name count60 .long .Lnames_abbrev_end0-.Lnames_abbrev_start0 # Header: abbreviation table size61 .long 0 # Header: augmentation length62 .long .Lcu_begin0 # Compilation unit 063 .long 2 # Bucket 064 .long 1 # Bucket 165 .long 193491849 # Hash in Bucket 166 .long .Lstring_foo # String in Bucket 1: foo67 .long .Lnames0-.Lnames_entries0 # Offset in Bucket 168.Lnames_abbrev_start0:69 .byte 46 # Abbrev code70 .byte 46 # DW_TAG_subprogram71 .byte 3 # DW_IDX_die_offset72 .byte 19 # DW_FORM_ref473 .byte 0 # End of abbrev74 .byte 0 # End of abbrev75 .byte 0 # End of abbrev list76.Lnames_abbrev_end0:77.Lnames_entries0:78.Lnames0:79 .byte 46 # Abbrev code80 .long .Ldie_foo-.Lcu_begin0 # DW_IDX_die_offset81 .long 0 # End of list: foo82 .p2align 283.Lnames_end0:84