111 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: Name Index @ 0x0 does not index any CU5# CHECK: error: Name Index @ 0x28 references a non-existing CU @ 0x16# CHECK: error: Name Index @ 0x58 references a CU @ 0x0, but this CU is already indexed by Name Index @ 0x287# CHECK: warning: CU @ 0x13 not covered by any Name Index8 9 .section .debug_str,"MS",@progbits,110.Lstring_foo:11 .asciz "foo"12.Lstring_foo_mangled:13 .asciz "_Z3foov"14.Lstring_bar:15 .asciz "bar"16.Lstring_producer:17 .asciz "Hand-written dwarf"18 19 .section .debug_abbrev,"",@progbits20.Lsection_abbrev:21 .byte 1 # Abbreviation Code22 .byte 17 # DW_TAG_compile_unit23 .byte 1 # DW_CHILDREN_yes24 .byte 37 # DW_AT_producer25 .byte 14 # DW_FORM_strp26 .byte 19 # DW_AT_language27 .byte 5 # DW_FORM_data228 .byte 0 # EOM(1)29 .byte 0 # EOM(2)30 .byte 0 # EOM(3)31 32 .section .debug_info,"",@progbits33.Lcu_begin0:34 .long .Lcu_end0-.Lcu_start0 # Length of Unit35.Lcu_start0:36 .short 4 # DWARF version number37 .long .Lsection_abbrev # Offset Into Abbrev. Section38 .byte 8 # Address Size (in bytes)39 .byte 1 # Abbrev [1] DW_TAG_compile_unit40 .long .Lstring_producer # DW_AT_producer41 .short 12 # DW_AT_language42 .byte 0 # End Of Children Mark43.Lcu_end0:44 45.Lcu_begin1:46 .long .Lcu_end1-.Lcu_start1 # Length of Unit47.Lcu_start1:48 .short 4 # DWARF version number49 .long .Lsection_abbrev # Offset Into Abbrev. Section50 .byte 8 # Address Size (in bytes)51 .byte 1 # Abbrev [1] DW_TAG_compile_unit52 .long .Lstring_producer # DW_AT_producer53 .short 12 # DW_AT_language54 .byte 0 # End Of Children Mark55.Lcu_end1:56 57 .section .debug_names,"",@progbits58 .long .Lnames_end0-.Lnames_start0 # Header: contribution length59.Lnames_start0:60 .short 5 # Header: version61 .short 0 # Header: padding62 .long 0 # Header: compilation unit count63 .long 0 # Header: local type unit count64 .long 0 # Header: foreign type unit count65 .long 0 # Header: bucket count66 .long 0 # Header: name count67 .long .Lnames_abbrev_end0-.Lnames_abbrev_start0 # Header: abbreviation table size68 .long 0 # Header: augmentation length69.Lnames_abbrev_start0:70 .byte 0 # End of abbrev list71.Lnames_abbrev_end0:72.p2align 273.Lnames_end0:74 75 .long .Lnames_end1-.Lnames_start1 # Header: contribution length76.Lnames_start1:77 .short 5 # Header: version78 .short 0 # Header: padding79 .long 2 # Header: compilation unit count80 .long 0 # Header: local type unit count81 .long 0 # Header: foreign type unit count82 .long 0 # Header: bucket count83 .long 0 # Header: name count84 .long .Lnames_abbrev_end1-.Lnames_abbrev_start1 # Header: abbreviation table size85 .long 0 # Header: augmentation length86 .long .Lcu_begin0 # Compilation unit 087 .long .Lcu_begin0+1 # Compilation unit 088.Lnames_abbrev_start1:89 .byte 0 # End of abbrev list90.Lnames_abbrev_end1:91.p2align 292.Lnames_end1:93 94 .long .Lnames_end2-.Lnames_start2 # Header: contribution length95.Lnames_start2:96 .short 5 # Header: version97 .short 0 # Header: padding98 .long 1 # Header: compilation unit count99 .long 0 # Header: local type unit count100 .long 0 # Header: foreign type unit count101 .long 0 # Header: bucket count102 .long 0 # Header: name count103 .long .Lnames_abbrev_end2-.Lnames_abbrev_start2 # Header: abbreviation table size104 .long 0 # Header: augmentation length105 .long .Lcu_begin0 # Compilation unit 0106.Lnames_abbrev_start2:107 .byte 0 # End of abbrev list108.Lnames_abbrev_end2:109.p2align 2110.Lnames_end2:111