203 lines · plain
1# RUN: rm -rf %t2# RUN: mkdir %t3# RUN: llvm-mc -filetype=obj -triple=x86_64 -dwarf-version=4 %s -o %t/test.o -split-dwarf-file %t/test.dwo4# RUN: cd %t5# RUN: llvm-symbolizer --verbose 0x0 --obj=test.o | FileCheck --check-prefix=SYM %s6# RUN: llvm-dwarfdump -lookup=0x1 test.o | FileCheck --check-prefix=LOOKUP %s7 8# SYM: Filename: .{{[/\\]}}test.c9# SYM: Function start filename: .{{[/\\]}}test.c10 11# LOOKUP: Line info: line 0, column 0, start file 'test.c', start line 112 13 .text14 .file "test.c"15 .globl f1 # -- Begin function f116 .p2align 4, 0x9017 .type f1,@function18f1: # @f119.Lfunc_begin0:20 .file 0 "./" "test.c" md5 0xde4c8c8bd673cd6151beb4570168727a21 .loc 0 1 0 # test.c:1:022 .cfi_startproc23# %bb.0: # %entry24 pushq %rbp25 .cfi_def_cfa_offset 1626 .cfi_offset %rbp, -1627 movq %rsp, %rbp28 .cfi_def_cfa_register %rbp29.Ltmp0:30 .loc 0 1 13 prologue_end # test.c:1:1331 popq %rbp32 .cfi_def_cfa %rsp, 833 retq34.Ltmp1:35.Lfunc_end0:36 .size f1, .Lfunc_end0-f137 .cfi_endproc38 # -- End function39 .section .debug_abbrev,"",@progbits40 .byte 1 # Abbreviation Code41 .byte 74 # DW_TAG_skeleton_unit42 .byte 0 # DW_CHILDREN_no43 .byte 16 # DW_AT_stmt_list44 .byte 23 # DW_FORM_sec_offset45 .byte 114 # DW_AT_str_offsets_base46 .byte 23 # DW_FORM_sec_offset47 .byte 27 # DW_AT_comp_dir48 .byte 37 # DW_FORM_strx149 .ascii "\264B" # DW_AT_GNU_pubnames50 .byte 25 # DW_FORM_flag_present51 .byte 118 # DW_AT_dwo_name52 .byte 37 # DW_FORM_strx153 .byte 17 # DW_AT_low_pc54 .byte 27 # DW_FORM_addrx55 .byte 18 # DW_AT_high_pc56 .byte 6 # DW_FORM_data457 .byte 115 # DW_AT_addr_base58 .byte 23 # DW_FORM_sec_offset59 .byte 0 # EOM(1)60 .byte 0 # EOM(2)61 .byte 0 # EOM(3)62 .section .debug_info,"",@progbits63.Lcu_begin0:64 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit65.Ldebug_info_start0:66 .short 5 # DWARF version number67 .byte 4 # DWARF Unit Type68 .byte 8 # Address Size (in bytes)69 .long .debug_abbrev # Offset Into Abbrev. Section70 .quad -232090606917172142471 .byte 1 # Abbrev [1] 0x14:0x14 DW_TAG_skeleton_unit72 .long .Lline_table_start0 # DW_AT_stmt_list73 .long .Lstr_offsets_base0 # DW_AT_str_offsets_base74 .byte 0 # DW_AT_comp_dir75 # DW_AT_GNU_pubnames76 .byte 1 # DW_AT_dwo_name77 .byte 0 # DW_AT_low_pc78 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc79 .long .Laddr_table_base0 # DW_AT_addr_base80.Ldebug_info_end0:81 .section .debug_str_offsets,"",@progbits82 .long 12 # Length of String Offsets Set83 .short 584 .short 085.Lstr_offsets_base0:86 .section .debug_str,"MS",@progbits,187.Lskel_string0:88 .asciz "./" # string offset=089.Lskel_string1:90 .asciz "./test.dwo" # string offset=391 .section .debug_str_offsets,"",@progbits92 .long .Lskel_string093 .long .Lskel_string194 .section .debug_str_offsets.dwo,"e",@progbits95 .long 20 # Length of String Offsets Set96 .short 597 .short 098 .section .debug_str.dwo,"eMS",@progbits,199.Linfo_string0:100 .asciz "f1" # string offset=0101.Linfo_string1:102 .asciz "clang version 14.0.0 (git@github.com:llvm/llvm-project.git e7fdff403e849b18d93cd4a5cb760cba66a92c0b)" # string offset=3103.Linfo_string2:104 .asciz "test.c" # string offset=104105.Linfo_string3:106 .asciz "./test.dwo" # string offset=111107 .section .debug_str_offsets.dwo,"e",@progbits108 .long 0109 .long 3110 .long 104111 .long 111112 .section .debug_info.dwo,"e",@progbits113 .long .Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit114.Ldebug_info_dwo_start0:115 .short 5 # DWARF version number116 .byte 5 # DWARF Unit Type117 .byte 8 # Address Size (in bytes)118 .long 0 # Offset Into Abbrev. Section119 .quad -2320906069171721424120 .byte 1 # Abbrev [1] 0x14:0x12 DW_TAG_compile_unit121 .byte 1 # DW_AT_producer122 .short 12 # DW_AT_language123 .byte 2 # DW_AT_name124 .byte 3 # DW_AT_dwo_name125 .byte 2 # Abbrev [2] 0x1a:0xb DW_TAG_subprogram126 .byte 0 # DW_AT_low_pc127 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc128 .byte 1 # DW_AT_frame_base129 .byte 86130 .byte 0 # DW_AT_name131 .byte 0 # DW_AT_decl_file132 .byte 1 # DW_AT_decl_line133 # DW_AT_external134 .byte 0 # End Of Children Mark135.Ldebug_info_dwo_end0:136 .section .debug_abbrev.dwo,"e",@progbits137 .byte 1 # Abbreviation Code138 .byte 17 # DW_TAG_compile_unit139 .byte 1 # DW_CHILDREN_yes140 .byte 37 # DW_AT_producer141 .byte 37 # DW_FORM_strx1142 .byte 19 # DW_AT_language143 .byte 5 # DW_FORM_data2144 .byte 3 # DW_AT_name145 .byte 37 # DW_FORM_strx1146 .byte 118 # DW_AT_dwo_name147 .byte 37 # DW_FORM_strx1148 .byte 0 # EOM(1)149 .byte 0 # EOM(2)150 .byte 2 # Abbreviation Code151 .byte 46 # DW_TAG_subprogram152 .byte 0 # DW_CHILDREN_no153 .byte 17 # DW_AT_low_pc154 .byte 27 # DW_FORM_addrx155 .byte 18 # DW_AT_high_pc156 .byte 6 # DW_FORM_data4157 .byte 64 # DW_AT_frame_base158 .byte 24 # DW_FORM_exprloc159 .byte 3 # DW_AT_name160 .byte 37 # DW_FORM_strx1161 .byte 58 # DW_AT_decl_file162 .byte 11 # DW_FORM_data1163 .byte 59 # DW_AT_decl_line164 .byte 11 # DW_FORM_data1165 .byte 63 # DW_AT_external166 .byte 25 # DW_FORM_flag_present167 .byte 0 # EOM(1)168 .byte 0 # EOM(2)169 .byte 0 # EOM(3)170 .section .debug_addr,"",@progbits171 .long .Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution172.Ldebug_addr_start0:173 .short 5 # DWARF version number174 .byte 8 # Address size175 .byte 0 # Segment selector size176.Laddr_table_base0:177 .quad .Lfunc_begin0178.Ldebug_addr_end0:179 .section .debug_gnu_pubnames,"",@progbits180 .long .LpubNames_end0-.LpubNames_start0 # Length of Public Names Info181.LpubNames_start0:182 .short 2 # DWARF Version183 .long .Lcu_begin0 # Offset of Compilation Unit Info184 .long 40 # Compilation Unit Length185 .long 26 # DIE offset186 .byte 48 # Attributes: FUNCTION, EXTERNAL187 .asciz "f1" # External Name188 .long 0 # End Mark189.LpubNames_end0:190 .section .debug_gnu_pubtypes,"",@progbits191 .long .LpubTypes_end0-.LpubTypes_start0 # Length of Public Types Info192.LpubTypes_start0:193 .short 2 # DWARF Version194 .long .Lcu_begin0 # Offset of Compilation Unit Info195 .long 40 # Compilation Unit Length196 .long 0 # End Mark197.LpubTypes_end0:198 .ident "clang version 14.0.0 (git@github.com:llvm/llvm-project.git e7fdff403e849b18d93cd4a5cb760cba66a92c0b)"199 .section ".note.GNU-stack","",@progbits200 .addrsig201 .section .debug_line,"",@progbits202.Lline_table_start0:203