93 lines · plain
1# RUN: llvm-mc -triple x86_64-pc-linux %s -filetype=obj -o %t2# RUN: llvm-dwarfdump -find=foo - <%t | FileCheck %s3 4# CHECK: 12: DW_TAG_subprogram5# CHECK-NEXT: DW_AT_name ("foo")6# CHECK-NEXT: DW_AT_external7# CHECK: 17: DW_TAG_subprogram8# CHECK-NEXT: DW_AT_name ("foo")9# CHECK-NEXT: DW_AT_external10 11 .section .debug_str,"MS",@progbits,112.Lstring_foo:13 .asciz "foo"14.Lstring_producer:15 .asciz "Hand-written dwarf"16 17 .section .debug_abbrev,"",@progbits18.Lsection_abbrev:19 .byte 1 # Abbreviation Code20 .byte 17 # DW_TAG_compile_unit21 .byte 1 # DW_CHILDREN_yes22 .byte 37 # DW_AT_producer23 .byte 14 # DW_FORM_strp24 .byte 19 # DW_AT_language25 .byte 5 # DW_FORM_data226 .byte 0 # EOM(1)27 .byte 0 # EOM(2)28 .byte 2 # Abbreviation Code29 .byte 46 # DW_TAG_subprogram30 .byte 0 # DW_CHILDREN_no31 .byte 3 # DW_AT_name32 .byte 14 # DW_FORM_strp33 .byte 63 # DW_AT_external34 .byte 25 # DW_FORM_flag_present35 .byte 0 # EOM(1)36 .byte 0 # EOM(2)37 .byte 0 # EOM(3)38 39 .section .debug_info,"",@progbits40.Lcu_begin0:41 .long .Lcu_end0-.Lcu_start0 # Length of Unit42.Lcu_start0:43 .short 4 # DWARF version number44 .long .Lsection_abbrev # Offset Into Abbrev. Section45 .byte 8 # Address Size (in bytes)46 .byte 1 # Abbrev [1] DW_TAG_compile_unit47 .long .Lstring_producer # DW_AT_producer48 .short 12 # DW_AT_language49.Ldie_foo:50 .byte 2 # Abbrev [2] DW_TAG_subprogram51 .long .Lstring_foo # DW_AT_name52 # DW_AT_external53.Ldie_foo2:54 .byte 2 # Abbrev [2] DW_TAG_subprogram55 .long .Lstring_foo # DW_AT_name56 # DW_AT_external57 .byte 0 # End Of Children Mark58.Lcu_end0:59 60 .section .debug_names,"",@progbits61 .long .Lnames_end0-.Lnames_start0 # Header: contribution length62.Lnames_start0:63 .short 5 # Header: version64 .short 0 # Header: padding65 .long 1 # Header: compilation unit count66 .long 0 # Header: local type unit count67 .long 0 # Header: foreign type unit count68 .long 0 # Header: bucket count69 .long 1 # Header: name count70 .long .Lnames_abbrev_end0-.Lnames_abbrev_start0 # Header: abbreviation table size71 .long 0 # Header: augmentation length72 .long .Lcu_begin0 # Compilation unit 073 .long .Lstring_foo # String in Bucket 0: foo74 .long .Lnames0-.Lnames_entries0 # Offset in Bucket 075.Lnames_abbrev_start0:76 .byte 46 # Abbrev code77 .byte 46 # DW_TAG_subprogram78 .byte 3 # DW_IDX_die_offset79 .byte 19 # DW_FORM_ref480 .byte 0 # End of abbrev81 .byte 0 # End of abbrev82 .byte 0 # End of abbrev list83.Lnames_abbrev_end0:84.Lnames_entries0:85.Lnames0:86 .byte 46 # Abbrev code87 .long .Ldie_foo-.Lcu_begin0 # DW_IDX_die_offset88 .byte 46 # Abbrev code89 .long .Ldie_foo2-.Lcu_begin0 # DW_IDX_die_offset90 .long 0 # End of list: foo91 .p2align 292.Lnames_end0:93