735 lines · plain
1# clang++ -O2 -g -gdwarf-4 -gsplit-dwarf main.cpp2# void use(int * x, int * y) {3# static int Foo = *y + *x;4# *x += 4;5# *y -= Foo;6# }7#8# int x = 0;9# int y = 1;10# int main(int argc, char *argv[]) {11# x = argc;12# y = argc + 3;13# use(&x, &y);14# return 0;15# }16 17 .text18 .file "main.cpp"19 .file 1 "." "main.cpp"20 .globl _Z3usePiS_ # -- Begin function _Z3usePiS_21 .p2align 4, 0x9022 .type _Z3usePiS_,@function23_Z3usePiS_: # @_Z3usePiS_24.Lfunc_begin0:25 .loc 1 1 0 # main.cpp:1:026 .cfi_startproc27# %bb.0: # %entry28 #DEBUG_VALUE: use:x <- $rdi29 #DEBUG_VALUE: use:y <- $rsi30 pushq %r1431 .cfi_def_cfa_offset 1632 pushq %rbx33 .cfi_def_cfa_offset 2434 pushq %rax35 .cfi_def_cfa_offset 3236 .cfi_offset %rbx, -2437 .cfi_offset %r14, -1638 movq %rsi, %rbx39 movq %rdi, %r1440.Ltmp0:41 .loc 1 2 2 prologue_end # main.cpp:2:242 movzbl _ZGVZ3usePiS_E3Foo(%rip), %eax43 testb %al, %al44 je .LBB0_145.Ltmp1:46.LBB0_3: # %init.end47 #DEBUG_VALUE: use:x <- $r1448 #DEBUG_VALUE: use:y <- $rbx49 .loc 1 3 5 # main.cpp:3:550 addl $4, (%r14)51 .loc 1 4 8 # main.cpp:4:852 movl _ZZ3usePiS_E3Foo(%rip), %eax53 .loc 1 4 5 is_stmt 0 # main.cpp:4:554 subl %eax, (%rbx)55 .loc 1 5 1 epilogue_begin is_stmt 1 # main.cpp:5:156 addq $8, %rsp57 .cfi_def_cfa_offset 2458 popq %rbx59.Ltmp2:60 #DEBUG_VALUE: use:y <- [DW_OP_LLVM_entry_value 1] $rsi61 .cfi_def_cfa_offset 1662 popq %r1463.Ltmp3:64 #DEBUG_VALUE: use:x <- [DW_OP_LLVM_entry_value 1] $rdi65 .cfi_def_cfa_offset 866 retq67.Ltmp4:68.LBB0_1: # %init.check69 .cfi_def_cfa_offset 3270 #DEBUG_VALUE: use:x <- $r1471 #DEBUG_VALUE: use:y <- $rbx72 .loc 1 2 2 # main.cpp:2:273 leaq _ZGVZ3usePiS_E3Foo(%rip), %rdi74 callq __cxa_guard_acquire@PLT75.Ltmp5:76 testl %eax, %eax77 je .LBB0_378.Ltmp6:79# %bb.2: # %init80 #DEBUG_VALUE: use:x <- $r1481 #DEBUG_VALUE: use:y <- $rbx82 .loc 1 2 24 is_stmt 0 # main.cpp:2:2483 movl (%r14), %eax84 .loc 1 2 22 # main.cpp:2:2285 addl (%rbx), %eax86 .loc 1 2 2 # main.cpp:2:287 movl %eax, _ZZ3usePiS_E3Foo(%rip)88 leaq _ZGVZ3usePiS_E3Foo(%rip), %rdi89 callq __cxa_guard_release@PLT90.Ltmp7:91 .loc 1 0 2 # main.cpp:0:292 jmp .LBB0_393.Ltmp8:94.Lfunc_end0:95 .size _Z3usePiS_, .Lfunc_end0-_Z3usePiS_96 .cfi_endproc97 # -- End function98 .globl main # -- Begin function main99 .p2align 4, 0x90100 .type main,@function101main: # @main102.Lfunc_begin1:103 .cfi_startproc104# %bb.0: # %entry105 #DEBUG_VALUE: main:argc <- $edi106 #DEBUG_VALUE: main:argv <- $rsi107 .loc 1 10 6 prologue_end is_stmt 1 # main.cpp:10:6108 movl %edi, x(%rip)109 .loc 1 11 13 # main.cpp:11:13110 addl $3, %edi111.Ltmp9:112 #DEBUG_VALUE: main:argc <- [DW_OP_LLVM_entry_value 1] $edi113 .loc 1 11 6 is_stmt 0 # main.cpp:11:6114 movl %edi, y(%rip)115.Ltmp10:116 #DEBUG_VALUE: use:y <- undef117 #DEBUG_VALUE: use:x <- undef118 .loc 1 2 2 is_stmt 1 # main.cpp:2:2119 movzbl _ZGVZ3usePiS_E3Foo(%rip), %eax120 testb %al, %al121 je .LBB1_1122.Ltmp11:123.LBB1_4: # %_Z3usePiS_.exit124 #DEBUG_VALUE: main:argc <- [DW_OP_LLVM_entry_value 1] $edi125 #DEBUG_VALUE: main:argv <- [DW_OP_LLVM_entry_value 1] $rsi126 .loc 1 3 5 # main.cpp:3:5127 addl $4, x(%rip)128 .loc 1 4 8 # main.cpp:4:8129 movl _ZZ3usePiS_E3Foo(%rip), %eax130 .loc 1 4 5 is_stmt 0 # main.cpp:4:5131 subl %eax, y(%rip)132.Ltmp12:133 .loc 1 13 4 is_stmt 1 # main.cpp:13:4134 xorl %eax, %eax135 retq136.Ltmp13:137.LBB1_1: # %init.check.i138 #DEBUG_VALUE: main:argc <- [DW_OP_LLVM_entry_value 1] $edi139 #DEBUG_VALUE: main:argv <- $rsi140 pushq %rax141 .cfi_def_cfa_offset 16142.Ltmp14:143 .loc 1 2 2 # main.cpp:2:2144 leaq _ZGVZ3usePiS_E3Foo(%rip), %rdi145 callq __cxa_guard_acquire@PLT146.Ltmp15:147 #DEBUG_VALUE: main:argv <- [DW_OP_LLVM_entry_value 1] $rsi148 testl %eax, %eax149 je .LBB1_3150.Ltmp16:151# %bb.2: # %init.i152 #DEBUG_VALUE: main:argc <- [DW_OP_LLVM_entry_value 1] $edi153 #DEBUG_VALUE: main:argv <- [DW_OP_LLVM_entry_value 1] $rsi154 .loc 1 2 24 is_stmt 0 # main.cpp:2:24155 movl x(%rip), %eax156 .loc 1 2 22 # main.cpp:2:22157 addl y(%rip), %eax158 .loc 1 2 2 # main.cpp:2:2159 movl %eax, _ZZ3usePiS_E3Foo(%rip)160 leaq _ZGVZ3usePiS_E3Foo(%rip), %rdi161 callq __cxa_guard_release@PLT162.Ltmp17:163.LBB1_3:164 #DEBUG_VALUE: main:argc <- [DW_OP_LLVM_entry_value 1] $edi165 #DEBUG_VALUE: main:argv <- [DW_OP_LLVM_entry_value 1] $rsi166 .loc 1 0 2 # main.cpp:0:2167 addq $8, %rsp168 .cfi_def_cfa_offset 8169 jmp .LBB1_4170.Lfunc_end1:171 .size main, .Lfunc_end1-main172 .cfi_endproc173 # -- End function174 .type _ZZ3usePiS_E3Foo,@object # @_ZZ3usePiS_E3Foo175 .local _ZZ3usePiS_E3Foo176 .comm _ZZ3usePiS_E3Foo,4,4177 .type _ZGVZ3usePiS_E3Foo,@object # @_ZGVZ3usePiS_E3Foo178 .local _ZGVZ3usePiS_E3Foo179 .comm _ZGVZ3usePiS_E3Foo,8,8180 .type x,@object # @x181 .bss182 .globl x183 .p2align 2, 0x0184x:185 .long 0 # 0x0186 .size x, 4187 188 .type y,@object # @y189 .data190 .globl y191 .p2align 2, 0x0192y:193 .long 1 # 0x1194 .size y, 4195 196 .section .debug_loc.dwo,"e",@progbits197.Ldebug_loc0:198 .byte 3199 .byte 3200 .long .Ltmp1-.Lfunc_begin0201 .short 1 # Loc expr size202 .byte 85 # DW_OP_reg5203 .byte 3204 .byte 5205 .long .Ltmp3-.Ltmp1206 .short 1 # Loc expr size207 .byte 94 # DW_OP_reg14208 .byte 3209 .byte 6210 .long .Ltmp4-.Ltmp3211 .short 4 # Loc expr size212 .byte 243 # DW_OP_GNU_entry_value213 .byte 1 # 1214 .byte 85 # DW_OP_reg5215 .byte 159 # DW_OP_stack_value216 .byte 3217 .byte 7218 .long .Lfunc_end0-.Ltmp4219 .short 1 # Loc expr size220 .byte 94 # DW_OP_reg14221 .byte 0222.Ldebug_loc1:223 .byte 3224 .byte 3225 .long .Ltmp1-.Lfunc_begin0226 .short 1 # Loc expr size227 .byte 84 # DW_OP_reg4228 .byte 3229 .byte 5230 .long .Ltmp2-.Ltmp1231 .short 1 # Loc expr size232 .byte 83 # DW_OP_reg3233 .byte 3234 .byte 8235 .long .Ltmp4-.Ltmp2236 .short 4 # Loc expr size237 .byte 243 # DW_OP_GNU_entry_value238 .byte 1 # 1239 .byte 84 # DW_OP_reg4240 .byte 159 # DW_OP_stack_value241 .byte 3242 .byte 7243 .long .Lfunc_end0-.Ltmp4244 .short 1 # Loc expr size245 .byte 83 # DW_OP_reg3246 .byte 0247.Ldebug_loc2:248 .byte 3249 .byte 4250 .long .Ltmp9-.Lfunc_begin1251 .short 1 # Loc expr size252 .byte 85 # super-register DW_OP_reg5253 .byte 3254 .byte 9255 .long .Lfunc_end1-.Ltmp9256 .short 4 # Loc expr size257 .byte 243 # DW_OP_GNU_entry_value258 .byte 1 # 1259 .byte 85 # super-register DW_OP_reg5260 .byte 159 # DW_OP_stack_value261 .byte 0262.Ldebug_loc3:263 .byte 3264 .byte 4265 .long .Ltmp11-.Lfunc_begin1266 .short 1 # Loc expr size267 .byte 84 # DW_OP_reg4268 .byte 3269 .byte 10270 .long .Ltmp13-.Ltmp11271 .short 4 # Loc expr size272 .byte 243 # DW_OP_GNU_entry_value273 .byte 1 # 1274 .byte 84 # DW_OP_reg4275 .byte 159 # DW_OP_stack_value276 .byte 3277 .byte 11278 .long .Ltmp15-.Ltmp13279 .short 1 # Loc expr size280 .byte 84 # DW_OP_reg4281 .byte 3282 .byte 12283 .long .Lfunc_end1-.Ltmp15284 .short 4 # Loc expr size285 .byte 243 # DW_OP_GNU_entry_value286 .byte 1 # 1287 .byte 84 # DW_OP_reg4288 .byte 159 # DW_OP_stack_value289 .byte 0290 .section .debug_abbrev,"",@progbits291 .byte 1 # Abbreviation Code292 .byte 17 # DW_TAG_compile_unit293 .byte 0 # DW_CHILDREN_no294 .byte 16 # DW_AT_stmt_list295 .byte 23 # DW_FORM_sec_offset296 .byte 27 # DW_AT_comp_dir297 .byte 14 # DW_FORM_strp298 .ascii "\264B" # DW_AT_GNU_pubnames299 .byte 25 # DW_FORM_flag_present300 .ascii "\260B" # DW_AT_GNU_dwo_name301 .byte 14 # DW_FORM_strp302 .ascii "\261B" # DW_AT_GNU_dwo_id303 .byte 7 # DW_FORM_data8304 .ascii "\262B" # DW_AT_GNU_ranges_base305 .byte 23 # DW_FORM_sec_offset306 .byte 17 # DW_AT_low_pc307 .byte 1 # DW_FORM_addr308 .byte 18 # DW_AT_high_pc309 .byte 6 # DW_FORM_data4310 .ascii "\263B" # DW_AT_GNU_addr_base311 .byte 23 # DW_FORM_sec_offset312 .byte 0 # EOM(1)313 .byte 0 # EOM(2)314 .byte 0 # EOM(3)315 .section .debug_info,"",@progbits316.Lcu_begin0:317 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit318.Ldebug_info_start0:319 .short 4 # DWARF version number320 .long .debug_abbrev # Offset Into Abbrev. Section321 .byte 8 # Address Size (in bytes)322 .byte 1 # Abbrev [1] 0xb:0x29 DW_TAG_compile_unit323 .long .Lline_table_start0 # DW_AT_stmt_list324 .long .Lskel_string0 # DW_AT_comp_dir325 # DW_AT_GNU_pubnames326 .long .Lskel_string1 # DW_AT_GNU_dwo_name327 .quad -3506999759942021708 # DW_AT_GNU_dwo_id328 .long .debug_ranges # DW_AT_GNU_ranges_base329 .quad .Lfunc_begin0 # DW_AT_low_pc330 .long .Lfunc_end1-.Lfunc_begin0 # DW_AT_high_pc331 .long .Laddr_table_base0 # DW_AT_GNU_addr_base332.Ldebug_info_end0:333 .section .debug_ranges,"",@progbits334.Ldebug_ranges0:335 .quad .Ltmp10-.Lfunc_begin0336 .quad .Ltmp12-.Lfunc_begin0337 .quad .Ltmp14-.Lfunc_begin0338 .quad .Ltmp17-.Lfunc_begin0339 .quad 0340 .quad 0341 .section .debug_str,"MS",@progbits,1342.Lskel_string0:343 .asciz "." # string offset=0344.Lskel_string1:345 .asciz "main.dwo" # string offset=38346 .section .debug_str.dwo,"eMS",@progbits,1347.Linfo_string0:348 .asciz "Foo" # string offset=0349.Linfo_string1:350 .asciz "int" # string offset=4351.Linfo_string2:352 .asciz "x" # string offset=8353.Linfo_string3:354 .asciz "y" # string offset=10355.Linfo_string4:356 .asciz "_Z3usePiS_" # string offset=12357.Linfo_string5:358 .asciz "use" # string offset=23359.Linfo_string6:360 .asciz "main" # string offset=27361.Linfo_string7:362 .asciz "argc" # string offset=32363.Linfo_string8:364 .asciz "argv" # string offset=37365.Linfo_string9:366 .asciz "char" # string offset=42367.Linfo_string10:368 .asciz "clang version 18.0.0 (git@github.com:llvm/llvm-project.git 3a8db0f4bfb57348f49d9603119fa157114bbf8e)" # string offset=47369.Linfo_string11:370 .asciz "main.cpp" # string offset=148371.Linfo_string12:372 .asciz "main.dwo" # string offset=157373 .section .debug_str_offsets.dwo,"e",@progbits374 .long 0375 .long 4376 .long 8377 .long 10378 .long 12379 .long 23380 .long 27381 .long 32382 .long 37383 .long 42384 .long 47385 .long 148386 .long 157387 .section .debug_info.dwo,"e",@progbits388 .long .Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit389.Ldebug_info_dwo_start0:390 .short 4 # DWARF version number391 .long 0 # Offset Into Abbrev. Section392 .byte 8 # Address Size (in bytes)393 .byte 1 # Abbrev [1] 0xb:0xb1 DW_TAG_compile_unit394 .byte 10 # DW_AT_producer395 .short 33 # DW_AT_language396 .byte 11 # DW_AT_name397 .byte 12 # DW_AT_GNU_dwo_name398 .quad -3506999759942021708 # DW_AT_GNU_dwo_id399 .byte 2 # Abbrev [2] 0x19:0x2a DW_TAG_subprogram400 .byte 3 # DW_AT_low_pc401 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc402 .byte 1 # DW_AT_frame_base403 .byte 87404 # DW_AT_GNU_all_call_sites405 .long 93 # DW_AT_abstract_origin406 .byte 3 # Abbrev [3] 0x25:0xb DW_TAG_variable407 .byte 0 # DW_AT_name408 .long 67 # DW_AT_type409 .byte 1 # DW_AT_decl_file410 .byte 2 # DW_AT_decl_line411 .byte 2 # DW_AT_location412 .byte 251413 .byte 0414 .byte 4 # Abbrev [4] 0x30:0x9 DW_TAG_formal_parameter415 .long .Ldebug_loc0-.debug_loc.dwo # DW_AT_location416 .long 99 # DW_AT_abstract_origin417 .byte 4 # Abbrev [4] 0x39:0x9 DW_TAG_formal_parameter418 .long .Ldebug_loc1-.debug_loc.dwo # DW_AT_location419 .long 107 # DW_AT_abstract_origin420 .byte 0 # End Of Children Mark421 .byte 5 # Abbrev [5] 0x43:0x4 DW_TAG_base_type422 .byte 1 # DW_AT_name423 .byte 5 # DW_AT_encoding424 .byte 4 # DW_AT_byte_size425 .byte 6 # Abbrev [6] 0x47:0xb DW_TAG_variable426 .byte 2 # DW_AT_name427 .long 67 # DW_AT_type428 # DW_AT_external429 .byte 1 # DW_AT_decl_file430 .byte 7 # DW_AT_decl_line431 .byte 2 # DW_AT_location432 .byte 251433 .byte 1434 .byte 6 # Abbrev [6] 0x52:0xb DW_TAG_variable435 .byte 3 # DW_AT_name436 .long 67 # DW_AT_type437 # DW_AT_external438 .byte 1 # DW_AT_decl_file439 .byte 8 # DW_AT_decl_line440 .byte 2 # DW_AT_location441 .byte 251442 .byte 2443 .byte 7 # Abbrev [7] 0x5d:0x17 DW_TAG_subprogram444 .byte 4 # DW_AT_linkage_name445 .byte 5 # DW_AT_name446 .byte 1 # DW_AT_decl_file447 .byte 1 # DW_AT_decl_line448 # DW_AT_external449 .byte 1 # DW_AT_inline450 .byte 8 # Abbrev [8] 0x63:0x8 DW_TAG_formal_parameter451 .byte 2 # DW_AT_name452 .byte 1 # DW_AT_decl_file453 .byte 1 # DW_AT_decl_line454 .long 116 # DW_AT_type455 .byte 8 # Abbrev [8] 0x6b:0x8 DW_TAG_formal_parameter456 .byte 3 # DW_AT_name457 .byte 1 # DW_AT_decl_file458 .byte 1 # DW_AT_decl_line459 .long 116 # DW_AT_type460 .byte 0 # End Of Children Mark461 .byte 9 # Abbrev [9] 0x74:0x5 DW_TAG_pointer_type462 .long 67 # DW_AT_type463 .byte 10 # Abbrev [10] 0x79:0x34 DW_TAG_subprogram464 .byte 4 # DW_AT_low_pc465 .long .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc466 .byte 1 # DW_AT_frame_base467 .byte 87468 # DW_AT_GNU_all_call_sites469 .byte 6 # DW_AT_name470 .byte 1 # DW_AT_decl_file471 .byte 9 # DW_AT_decl_line472 .long 67 # DW_AT_type473 # DW_AT_external474 .byte 11 # Abbrev [11] 0x88:0xc DW_TAG_formal_parameter475 .long .Ldebug_loc2-.debug_loc.dwo # DW_AT_location476 .byte 7 # DW_AT_name477 .byte 1 # DW_AT_decl_file478 .byte 9 # DW_AT_decl_line479 .long 67 # DW_AT_type480 .byte 11 # Abbrev [11] 0x94:0xc DW_TAG_formal_parameter481 .long .Ldebug_loc3-.debug_loc.dwo # DW_AT_location482 .byte 8 # DW_AT_name483 .byte 1 # DW_AT_decl_file484 .byte 9 # DW_AT_decl_line485 .long 173 # DW_AT_type486 .byte 12 # Abbrev [12] 0xa0:0xc DW_TAG_inlined_subroutine487 .long 93 # DW_AT_abstract_origin488 .long .Ldebug_ranges0-.debug_ranges # DW_AT_ranges489 .byte 1 # DW_AT_call_file490 .byte 12 # DW_AT_call_line491 .byte 4 # DW_AT_call_column492 .byte 0 # End Of Children Mark493 .byte 9 # Abbrev [9] 0xad:0x5 DW_TAG_pointer_type494 .long 178 # DW_AT_type495 .byte 9 # Abbrev [9] 0xb2:0x5 DW_TAG_pointer_type496 .long 183 # DW_AT_type497 .byte 5 # Abbrev [5] 0xb7:0x4 DW_TAG_base_type498 .byte 9 # DW_AT_name499 .byte 6 # DW_AT_encoding500 .byte 1 # DW_AT_byte_size501 .byte 0 # End Of Children Mark502.Ldebug_info_dwo_end0:503 .section .debug_abbrev.dwo,"e",@progbits504 .byte 1 # Abbreviation Code505 .byte 17 # DW_TAG_compile_unit506 .byte 1 # DW_CHILDREN_yes507 .byte 37 # DW_AT_producer508 .ascii "\202>" # DW_FORM_GNU_str_index509 .byte 19 # DW_AT_language510 .byte 5 # DW_FORM_data2511 .byte 3 # DW_AT_name512 .ascii "\202>" # DW_FORM_GNU_str_index513 .ascii "\260B" # DW_AT_GNU_dwo_name514 .ascii "\202>" # DW_FORM_GNU_str_index515 .ascii "\261B" # DW_AT_GNU_dwo_id516 .byte 7 # DW_FORM_data8517 .byte 0 # EOM(1)518 .byte 0 # EOM(2)519 .byte 2 # Abbreviation Code520 .byte 46 # DW_TAG_subprogram521 .byte 1 # DW_CHILDREN_yes522 .byte 17 # DW_AT_low_pc523 .ascii "\201>" # DW_FORM_GNU_addr_index524 .byte 18 # DW_AT_high_pc525 .byte 6 # DW_FORM_data4526 .byte 64 # DW_AT_frame_base527 .byte 24 # DW_FORM_exprloc528 .ascii "\227B" # DW_AT_GNU_all_call_sites529 .byte 25 # DW_FORM_flag_present530 .byte 49 # DW_AT_abstract_origin531 .byte 19 # DW_FORM_ref4532 .byte 0 # EOM(1)533 .byte 0 # EOM(2)534 .byte 3 # Abbreviation Code535 .byte 52 # DW_TAG_variable536 .byte 0 # DW_CHILDREN_no537 .byte 3 # DW_AT_name538 .ascii "\202>" # DW_FORM_GNU_str_index539 .byte 73 # DW_AT_type540 .byte 19 # DW_FORM_ref4541 .byte 58 # DW_AT_decl_file542 .byte 11 # DW_FORM_data1543 .byte 59 # DW_AT_decl_line544 .byte 11 # DW_FORM_data1545 .byte 2 # DW_AT_location546 .byte 24 # DW_FORM_exprloc547 .byte 0 # EOM(1)548 .byte 0 # EOM(2)549 .byte 4 # Abbreviation Code550 .byte 5 # DW_TAG_formal_parameter551 .byte 0 # DW_CHILDREN_no552 .byte 2 # DW_AT_location553 .byte 23 # DW_FORM_sec_offset554 .byte 49 # DW_AT_abstract_origin555 .byte 19 # DW_FORM_ref4556 .byte 0 # EOM(1)557 .byte 0 # EOM(2)558 .byte 5 # Abbreviation Code559 .byte 36 # DW_TAG_base_type560 .byte 0 # DW_CHILDREN_no561 .byte 3 # DW_AT_name562 .ascii "\202>" # DW_FORM_GNU_str_index563 .byte 62 # DW_AT_encoding564 .byte 11 # DW_FORM_data1565 .byte 11 # DW_AT_byte_size566 .byte 11 # DW_FORM_data1567 .byte 0 # EOM(1)568 .byte 0 # EOM(2)569 .byte 6 # Abbreviation Code570 .byte 52 # DW_TAG_variable571 .byte 0 # DW_CHILDREN_no572 .byte 3 # DW_AT_name573 .ascii "\202>" # DW_FORM_GNU_str_index574 .byte 73 # DW_AT_type575 .byte 19 # DW_FORM_ref4576 .byte 63 # DW_AT_external577 .byte 25 # DW_FORM_flag_present578 .byte 58 # DW_AT_decl_file579 .byte 11 # DW_FORM_data1580 .byte 59 # DW_AT_decl_line581 .byte 11 # DW_FORM_data1582 .byte 2 # DW_AT_location583 .byte 24 # DW_FORM_exprloc584 .byte 0 # EOM(1)585 .byte 0 # EOM(2)586 .byte 7 # Abbreviation Code587 .byte 46 # DW_TAG_subprogram588 .byte 1 # DW_CHILDREN_yes589 .byte 110 # DW_AT_linkage_name590 .ascii "\202>" # DW_FORM_GNU_str_index591 .byte 3 # DW_AT_name592 .ascii "\202>" # DW_FORM_GNU_str_index593 .byte 58 # DW_AT_decl_file594 .byte 11 # DW_FORM_data1595 .byte 59 # DW_AT_decl_line596 .byte 11 # DW_FORM_data1597 .byte 63 # DW_AT_external598 .byte 25 # DW_FORM_flag_present599 .byte 32 # DW_AT_inline600 .byte 11 # DW_FORM_data1601 .byte 0 # EOM(1)602 .byte 0 # EOM(2)603 .byte 8 # Abbreviation Code604 .byte 5 # DW_TAG_formal_parameter605 .byte 0 # DW_CHILDREN_no606 .byte 3 # DW_AT_name607 .ascii "\202>" # DW_FORM_GNU_str_index608 .byte 58 # DW_AT_decl_file609 .byte 11 # DW_FORM_data1610 .byte 59 # DW_AT_decl_line611 .byte 11 # DW_FORM_data1612 .byte 73 # DW_AT_type613 .byte 19 # DW_FORM_ref4614 .byte 0 # EOM(1)615 .byte 0 # EOM(2)616 .byte 9 # Abbreviation Code617 .byte 15 # DW_TAG_pointer_type618 .byte 0 # DW_CHILDREN_no619 .byte 73 # DW_AT_type620 .byte 19 # DW_FORM_ref4621 .byte 0 # EOM(1)622 .byte 0 # EOM(2)623 .byte 10 # Abbreviation Code624 .byte 46 # DW_TAG_subprogram625 .byte 1 # DW_CHILDREN_yes626 .byte 17 # DW_AT_low_pc627 .ascii "\201>" # DW_FORM_GNU_addr_index628 .byte 18 # DW_AT_high_pc629 .byte 6 # DW_FORM_data4630 .byte 64 # DW_AT_frame_base631 .byte 24 # DW_FORM_exprloc632 .ascii "\227B" # DW_AT_GNU_all_call_sites633 .byte 25 # DW_FORM_flag_present634 .byte 3 # DW_AT_name635 .ascii "\202>" # DW_FORM_GNU_str_index636 .byte 58 # DW_AT_decl_file637 .byte 11 # DW_FORM_data1638 .byte 59 # DW_AT_decl_line639 .byte 11 # DW_FORM_data1640 .byte 73 # DW_AT_type641 .byte 19 # DW_FORM_ref4642 .byte 63 # DW_AT_external643 .byte 25 # DW_FORM_flag_present644 .byte 0 # EOM(1)645 .byte 0 # EOM(2)646 .byte 11 # Abbreviation Code647 .byte 5 # DW_TAG_formal_parameter648 .byte 0 # DW_CHILDREN_no649 .byte 2 # DW_AT_location650 .byte 23 # DW_FORM_sec_offset651 .byte 3 # DW_AT_name652 .ascii "\202>" # DW_FORM_GNU_str_index653 .byte 58 # DW_AT_decl_file654 .byte 11 # DW_FORM_data1655 .byte 59 # DW_AT_decl_line656 .byte 11 # DW_FORM_data1657 .byte 73 # DW_AT_type658 .byte 19 # DW_FORM_ref4659 .byte 0 # EOM(1)660 .byte 0 # EOM(2)661 .byte 12 # Abbreviation Code662 .byte 29 # DW_TAG_inlined_subroutine663 .byte 0 # DW_CHILDREN_no664 .byte 49 # DW_AT_abstract_origin665 .byte 19 # DW_FORM_ref4666 .byte 85 # DW_AT_ranges667 .byte 23 # DW_FORM_sec_offset668 .byte 88 # DW_AT_call_file669 .byte 11 # DW_FORM_data1670 .byte 89 # DW_AT_call_line671 .byte 11 # DW_FORM_data1672 .byte 87 # DW_AT_call_column673 .byte 11 # DW_FORM_data1674 .byte 0 # EOM(1)675 .byte 0 # EOM(2)676 .byte 0 # EOM(3)677 .section .debug_addr,"",@progbits678.Laddr_table_base0:679 .quad _ZZ3usePiS_E3Foo680 .quad x681 .quad y682 .quad .Lfunc_begin0683 .quad .Lfunc_begin1684 .quad .Ltmp1685 .quad .Ltmp3686 .quad .Ltmp4687 .quad .Ltmp2688 .quad .Ltmp9689 .quad .Ltmp11690 .quad .Ltmp13691 .quad .Ltmp15692 .section .debug_gnu_pubnames,"",@progbits693 .long .LpubNames_end0-.LpubNames_start0 # Length of Public Names Info694.LpubNames_start0:695 .short 2 # DWARF Version696 .long .Lcu_begin0 # Offset of Compilation Unit Info697 .long 52 # Compilation Unit Length698 .long 37 # DIE offset699 .byte 160 # Attributes: VARIABLE, STATIC700 .asciz "use::Foo" # External Name701 .long 71 # DIE offset702 .byte 32 # Attributes: VARIABLE, EXTERNAL703 .asciz "x" # External Name704 .long 82 # DIE offset705 .byte 32 # Attributes: VARIABLE, EXTERNAL706 .asciz "y" # External Name707 .long 93 # DIE offset708 .byte 48 # Attributes: FUNCTION, EXTERNAL709 .asciz "use" # External Name710 .long 121 # DIE offset711 .byte 48 # Attributes: FUNCTION, EXTERNAL712 .asciz "main" # External Name713 .long 0 # End Mark714.LpubNames_end0:715 .section .debug_gnu_pubtypes,"",@progbits716 .long .LpubTypes_end0-.LpubTypes_start0 # Length of Public Types Info717.LpubTypes_start0:718 .short 2 # DWARF Version719 .long .Lcu_begin0 # Offset of Compilation Unit Info720 .long 52 # Compilation Unit Length721 .long 67 # DIE offset722 .byte 144 # Attributes: TYPE, STATIC723 .asciz "int" # External Name724 .long 183 # DIE offset725 .byte 144 # Attributes: TYPE, STATIC726 .asciz "char" # External Name727 .long 0 # End Mark728.LpubTypes_end0:729 .ident "clang version 18.0.0 (git@github.com:llvm/llvm-project.git 3a8db0f4bfb57348f49d9603119fa157114bbf8e)"730 .section ".note.GNU-stack","",@progbits731 .addrsig732 .addrsig_sym _ZGVZ3usePiS_E3Foo733 .section .debug_line,"",@progbits734.Lline_table_start0:735