749 lines · plain
1# clang++ -fbasic-block-sections=all -ffunction-sections -g2 -gdwarf-5 -gsplit-dwarf2# __attribute__((always_inline))3# int doStuff(int val) {4# if (val)5# ++val;6# return val;7# }8# __attribute__((always_inline))9# int doStuff2(int val) {10# int foo = 3;11# return val + foo;12# }13#14#15# int main(int argc, const char** argv) {16# return doStuff(argc) + doStuff2(argc);;17# }18 .text19 .file "main.cpp"20 .section .text._Z7doStuffi,"ax",@progbits21 .globl _Z7doStuffi # -- Begin function _Z7doStuffi22 .p2align 4, 0x9023 .type _Z7doStuffi,@function24_Z7doStuffi: # @_Z7doStuffi25.Lfunc_begin0:26 .file 0 "." "main.cpp" md5 0x69a746524dda095f8ea37f5a26dd1e9b27 .loc 0 2 0 # main.cpp:2:028 .cfi_startproc29# %bb.0: # %entry30 pushq %rbp31 .cfi_def_cfa_offset 1632 .cfi_offset %rbp, -1633 movq %rsp, %rbp34 .cfi_def_cfa_register %rbp35 movl %edi, -4(%rbp)36.Ltmp0:37 .loc 0 3 7 prologue_end # main.cpp:3:738 cmpl $0, -4(%rbp)39.Ltmp1:40 .loc 0 3 7 is_stmt 0 # main.cpp:3:741 je _Z7doStuffi.__part.242 jmp _Z7doStuffi.__part.143.LBB_END0_0:44 .cfi_endproc45 .section .text._Z7doStuffi,"ax",@progbits,unique,146_Z7doStuffi.__part.1: # %if.then47 .cfi_startproc48 .cfi_def_cfa %rbp, 1649 .cfi_offset %rbp, -1650 .loc 0 4 5 is_stmt 1 # main.cpp:4:551 movl -4(%rbp), %eax52 addl $1, %eax53 movl %eax, -4(%rbp)54 jmp _Z7doStuffi.__part.255.LBB_END0_1:56 .size _Z7doStuffi.__part.1, .LBB_END0_1-_Z7doStuffi.__part.157 .cfi_endproc58 .section .text._Z7doStuffi,"ax",@progbits,unique,259_Z7doStuffi.__part.2: # %if.end60 .cfi_startproc61 .cfi_def_cfa %rbp, 1662 .cfi_offset %rbp, -1663 .loc 0 5 10 # main.cpp:5:1064 movl -4(%rbp), %eax65 .loc 0 5 3 epilogue_begin is_stmt 0 # main.cpp:5:366 popq %rbp67 .cfi_def_cfa %rsp, 868 retq69.LBB_END0_2:70 .size _Z7doStuffi.__part.2, .LBB_END0_2-_Z7doStuffi.__part.271 .cfi_endproc72 .section .text._Z7doStuffi,"ax",@progbits73.Lfunc_end0:74 .size _Z7doStuffi, .Lfunc_end0-_Z7doStuffi75 # -- End function76 .section .text._Z8doStuff2i,"ax",@progbits77 .globl _Z8doStuff2i # -- Begin function _Z8doStuff2i78 .p2align 4, 0x9079 .type _Z8doStuff2i,@function80_Z8doStuff2i: # @_Z8doStuff2i81.Lfunc_begin1:82 .loc 0 8 0 is_stmt 1 # main.cpp:8:083 .cfi_startproc84# %bb.0: # %entry85 pushq %rbp86 .cfi_def_cfa_offset 1687 .cfi_offset %rbp, -1688 movq %rsp, %rbp89 .cfi_def_cfa_register %rbp90 movl %edi, -4(%rbp)91.Ltmp2:92 .loc 0 9 7 prologue_end # main.cpp:9:793 movl $3, -8(%rbp)94 .loc 0 10 10 # main.cpp:10:1095 movl -4(%rbp), %eax96 .loc 0 10 14 is_stmt 0 # main.cpp:10:1497 addl -8(%rbp), %eax98 .loc 0 10 3 epilogue_begin # main.cpp:10:399 popq %rbp100 .cfi_def_cfa %rsp, 8101 retq102.LBB_END1_0:103 .cfi_endproc104.Lfunc_end1:105 .size _Z8doStuff2i, .Lfunc_end1-_Z8doStuff2i106 # -- End function107 .section .text.main,"ax",@progbits108 .globl main # -- Begin function main109 .p2align 4, 0x90110 .type main,@function111main: # @main112.Lfunc_begin2:113 .loc 0 14 0 is_stmt 1 # main.cpp:14:0114 .cfi_startproc115# %bb.0: # %entry116 pushq %rbp117 .cfi_def_cfa_offset 16118 .cfi_offset %rbp, -16119 movq %rsp, %rbp120 .cfi_def_cfa_register %rbp121 movl $0, -16(%rbp)122 movl %edi, -20(%rbp)123 movq %rsi, -32(%rbp)124.Ltmp3:125 .loc 0 15 21 prologue_end # main.cpp:15:21126 movl -20(%rbp), %eax127 movl %eax, -12(%rbp)128.Ltmp4:129 .loc 0 3 7 # main.cpp:3:7130 cmpl $0, -12(%rbp)131.Ltmp5:132 .loc 0 3 7 is_stmt 0 # main.cpp:3:7133 je main.__part.2134 jmp main.__part.1135.LBB_END2_0:136 .cfi_endproc137 .section .text.main,"ax",@progbits,unique,3138main.__part.1: # %if.then.i139 .cfi_startproc140 .cfi_def_cfa %rbp, 16141 .cfi_offset %rbp, -16142 .loc 0 4 5 is_stmt 1 # main.cpp:4:5143 movl -12(%rbp), %eax144 addl $1, %eax145 movl %eax, -12(%rbp)146 jmp main.__part.2147.LBB_END2_1:148 .size main.__part.1, .LBB_END2_1-main.__part.1149 .cfi_endproc150 .section .text.main,"ax",@progbits,unique,4151main.__part.2: # %_Z7doStuffi.exit152 .cfi_startproc153 .cfi_def_cfa %rbp, 16154 .cfi_offset %rbp, -16155 .loc 0 5 10 # main.cpp:5:10156 movl -12(%rbp), %eax157.Ltmp6:158 .loc 0 15 38 # main.cpp:15:38159 movl -20(%rbp), %ecx160 movl %ecx, -4(%rbp)161.Ltmp7:162 .loc 0 9 7 # main.cpp:9:7163 movl $3, -8(%rbp)164 .loc 0 10 10 # main.cpp:10:10165 movl -4(%rbp), %ecx166 .loc 0 10 14 is_stmt 0 # main.cpp:10:14167 addl -8(%rbp), %ecx168.Ltmp8:169 .loc 0 15 27 is_stmt 1 # main.cpp:15:27170 addl %ecx, %eax171 .loc 0 15 5 epilogue_begin is_stmt 0 # main.cpp:15:5172 popq %rbp173 .cfi_def_cfa %rsp, 8174 retq175.LBB_END2_2:176 .size main.__part.2, .LBB_END2_2-main.__part.2177 .cfi_endproc178 .section .text.main,"ax",@progbits179.Lfunc_end2:180 .size main, .Lfunc_end2-main181 # -- End function182 .section .debug_abbrev,"",@progbits183 .byte 1 # Abbreviation Code184 .byte 74 # DW_TAG_skeleton_unit185 .byte 0 # DW_CHILDREN_no186 .byte 16 # DW_AT_stmt_list187 .byte 23 # DW_FORM_sec_offset188 .byte 114 # DW_AT_str_offsets_base189 .byte 23 # DW_FORM_sec_offset190 .byte 27 # DW_AT_comp_dir191 .byte 37 # DW_FORM_strx1192 .ascii "\264B" # DW_AT_GNU_pubnames193 .byte 25 # DW_FORM_flag_present194 .byte 118 # DW_AT_dwo_name195 .byte 37 # DW_FORM_strx1196 .byte 17 # DW_AT_low_pc197 .byte 1 # DW_FORM_addr198 .byte 85 # DW_AT_ranges199 .byte 35 # DW_FORM_rnglistx200 .byte 115 # DW_AT_addr_base201 .byte 23 # DW_FORM_sec_offset202 .byte 116 # DW_AT_rnglists_base203 .byte 23 # DW_FORM_sec_offset204 .byte 0 # EOM(1)205 .byte 0 # EOM(2)206 .byte 0 # EOM(3)207 .section .debug_info,"",@progbits208.Lcu_begin0:209 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit210.Ldebug_info_start0:211 .short 5 # DWARF version number212 .byte 4 # DWARF Unit Type213 .byte 8 # Address Size (in bytes)214 .long .debug_abbrev # Offset Into Abbrev. Section215 .quad 1354107878901449185216 .byte 1 # Abbrev [1] 0x14:0x1c DW_TAG_skeleton_unit217 .long .Lline_table_start0 # DW_AT_stmt_list218 .long .Lstr_offsets_base0 # DW_AT_str_offsets_base219 .byte 0 # DW_AT_comp_dir220 # DW_AT_GNU_pubnames221 .byte 1 # DW_AT_dwo_name222 .quad 0 # DW_AT_low_pc223 .byte 0 # DW_AT_ranges224 .long .Laddr_table_base0 # DW_AT_addr_base225 .long .Lrnglists_table_base0 # DW_AT_rnglists_base226.Ldebug_info_end0:227 .section .debug_rnglists,"",@progbits228 .long .Ldebug_list_header_end0-.Ldebug_list_header_start0 # Length229.Ldebug_list_header_start0:230 .short 5 # Version231 .byte 8 # Address size232 .byte 0 # Segment selector size233 .long 1 # Offset entry count234.Lrnglists_table_base0:235 .long .Ldebug_ranges4-.Lrnglists_table_base0236.Ldebug_ranges4:237 .byte 3 # DW_RLE_startx_length238 .byte 0 # start index239 .uleb128 .LBB_END0_1-_Z7doStuffi.__part.1 # length240 .byte 3 # DW_RLE_startx_length241 .byte 1 # start index242 .uleb128 .LBB_END0_2-_Z7doStuffi.__part.2 # length243 .byte 3 # DW_RLE_startx_length244 .byte 2 # start index245 .uleb128 .Lfunc_end0-.Lfunc_begin0 # length246 .byte 3 # DW_RLE_startx_length247 .byte 3 # start index248 .uleb128 .Lfunc_end1-.Lfunc_begin1 # length249 .byte 3 # DW_RLE_startx_length250 .byte 4 # start index251 .uleb128 .LBB_END2_1-main.__part.1 # length252 .byte 3 # DW_RLE_startx_length253 .byte 5 # start index254 .uleb128 .LBB_END2_2-main.__part.2 # length255 .byte 3 # DW_RLE_startx_length256 .byte 6 # start index257 .uleb128 .Lfunc_end2-.Lfunc_begin2 # length258 .byte 0 # DW_RLE_end_of_list259.Ldebug_list_header_end0:260 .section .debug_str_offsets,"",@progbits261 .long 12 # Length of String Offsets Set262 .short 5263 .short 0264.Lstr_offsets_base0:265 .section .debug_str,"MS",@progbits,1266.Lskel_string0:267 .asciz "." # string offset=0268.Lskel_string1:269 .asciz "main.dwo" # string offset=38270 .section .debug_str_offsets,"",@progbits271 .long .Lskel_string0272 .long .Lskel_string1273 .section .debug_str_offsets.dwo,"e",@progbits274 .long 60 # Length of String Offsets Set275 .short 5276 .short 0277 .section .debug_str.dwo,"eMS",@progbits,1278.Linfo_string0:279 .asciz "_Z7doStuffi" # string offset=0280.Linfo_string1:281 .asciz "doStuff" # string offset=12282.Linfo_string2:283 .asciz "int" # string offset=20284.Linfo_string3:285 .asciz "val" # string offset=24286.Linfo_string4:287 .asciz "_Z8doStuff2i" # string offset=28288.Linfo_string5:289 .asciz "doStuff2" # string offset=41290.Linfo_string6:291 .asciz "foo" # string offset=50292.Linfo_string7:293 .asciz "main" # string offset=54294.Linfo_string8:295 .asciz "argc" # string offset=59296.Linfo_string9:297 .asciz "argv" # string offset=64298.Linfo_string10:299 .asciz "char" # string offset=69300.Linfo_string11:301 .asciz "clang version 18.0.0 (git@github.com:llvm/llvm-project.git 3a8db0f4bfb57348f49d9603119fa157114bbf8e)" # string offset=74302.Linfo_string12:303 .asciz "main.cpp" # string offset=175304.Linfo_string13:305 .asciz "main.dwo" # string offset=184306 .section .debug_str_offsets.dwo,"e",@progbits307 .long 0308 .long 12309 .long 20310 .long 24311 .long 28312 .long 41313 .long 50314 .long 54315 .long 59316 .long 64317 .long 69318 .long 74319 .long 175320 .long 184321 .section .debug_info.dwo,"e",@progbits322 .long .Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit323.Ldebug_info_dwo_start0:324 .short 5 # DWARF version number325 .byte 5 # DWARF Unit Type326 .byte 8 # Address Size (in bytes)327 .long 0 # Offset Into Abbrev. Section328 .quad 1354107878901449185329 .byte 1 # Abbrev [1] 0x14:0xc6 DW_TAG_compile_unit330 .byte 11 # DW_AT_producer331 .short 33 # DW_AT_language332 .byte 12 # DW_AT_name333 .byte 13 # DW_AT_dwo_name334 .byte 2 # Abbrev [2] 0x1a:0x11 DW_TAG_subprogram335 .byte 0 # DW_AT_ranges336 .byte 1 # DW_AT_frame_base337 .byte 86338 .long 72 # DW_AT_abstract_origin339 .byte 3 # Abbrev [3] 0x22:0x8 DW_TAG_formal_parameter340 .byte 2 # DW_AT_location341 .byte 145342 .byte 124343 .long 81 # DW_AT_abstract_origin344 .byte 0 # End Of Children Mark345 .byte 4 # Abbrev [4] 0x2b:0x1d DW_TAG_subprogram346 .byte 3 # DW_AT_low_pc347 .long .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc348 .byte 1 # DW_AT_frame_base349 .byte 86350 .long 94 # DW_AT_abstract_origin351 .byte 3 # Abbrev [3] 0x37:0x8 DW_TAG_formal_parameter352 .byte 2 # DW_AT_location353 .byte 145354 .byte 124355 .long 103 # DW_AT_abstract_origin356 .byte 5 # Abbrev [5] 0x3f:0x8 DW_TAG_variable357 .byte 2 # DW_AT_location358 .byte 145359 .byte 120360 .long 111 # DW_AT_abstract_origin361 .byte 0 # End Of Children Mark362 .byte 6 # Abbrev [6] 0x48:0x12 DW_TAG_subprogram363 .byte 0 # DW_AT_linkage_name364 .byte 1 # DW_AT_name365 .byte 0 # DW_AT_decl_file366 .byte 2 # DW_AT_decl_line367 .long 90 # DW_AT_type368 # DW_AT_external369 # DW_AT_inline370 .byte 7 # Abbrev [7] 0x51:0x8 DW_TAG_formal_parameter371 .byte 3 # DW_AT_name372 .byte 0 # DW_AT_decl_file373 .byte 2 # DW_AT_decl_line374 .long 90 # DW_AT_type375 .byte 0 # End Of Children Mark376 .byte 8 # Abbrev [8] 0x5a:0x4 DW_TAG_base_type377 .byte 2 # DW_AT_name378 .byte 5 # DW_AT_encoding379 .byte 4 # DW_AT_byte_size380 .byte 6 # Abbrev [6] 0x5e:0x1a DW_TAG_subprogram381 .byte 4 # DW_AT_linkage_name382 .byte 5 # DW_AT_name383 .byte 0 # DW_AT_decl_file384 .byte 8 # DW_AT_decl_line385 .long 90 # DW_AT_type386 # DW_AT_external387 # DW_AT_inline388 .byte 7 # Abbrev [7] 0x67:0x8 DW_TAG_formal_parameter389 .byte 3 # DW_AT_name390 .byte 0 # DW_AT_decl_file391 .byte 8 # DW_AT_decl_line392 .long 90 # DW_AT_type393 .byte 9 # Abbrev [9] 0x6f:0x8 DW_TAG_variable394 .byte 6 # DW_AT_name395 .byte 0 # DW_AT_decl_file396 .byte 9 # DW_AT_decl_line397 .long 90 # DW_AT_type398 .byte 0 # End Of Children Mark399 .byte 10 # Abbrev [10] 0x78:0x4e DW_TAG_subprogram400 .byte 1 # DW_AT_ranges401 .byte 1 # DW_AT_frame_base402 .byte 86403 .byte 7 # DW_AT_name404 .byte 0 # DW_AT_decl_file405 .byte 14 # DW_AT_decl_line406 .long 90 # DW_AT_type407 # DW_AT_external408 .byte 11 # Abbrev [11] 0x83:0xb DW_TAG_formal_parameter409 .byte 2 # DW_AT_location410 .byte 145411 .byte 108412 .byte 8 # DW_AT_name413 .byte 0 # DW_AT_decl_file414 .byte 14 # DW_AT_decl_line415 .long 90 # DW_AT_type416 .byte 11 # Abbrev [11] 0x8e:0xb DW_TAG_formal_parameter417 .byte 2 # DW_AT_location418 .byte 145419 .byte 96420 .byte 9 # DW_AT_name421 .byte 0 # DW_AT_decl_file422 .byte 14 # DW_AT_decl_line423 .long 198 # DW_AT_type424 .byte 12 # Abbrev [12] 0x99:0x12 DW_TAG_inlined_subroutine425 .long 72 # DW_AT_abstract_origin426 .byte 2 # DW_AT_ranges427 .byte 0 # DW_AT_call_file428 .byte 15 # DW_AT_call_line429 .byte 13 # DW_AT_call_column430 .byte 3 # Abbrev [3] 0xa2:0x8 DW_TAG_formal_parameter431 .byte 2 # DW_AT_location432 .byte 145433 .byte 116434 .long 81 # DW_AT_abstract_origin435 .byte 0 # End Of Children Mark436 .byte 12 # Abbrev [12] 0xab:0x1a DW_TAG_inlined_subroutine437 .long 94 # DW_AT_abstract_origin438 .byte 3 # DW_AT_ranges439 .byte 0 # DW_AT_call_file440 .byte 15 # DW_AT_call_line441 .byte 29 # DW_AT_call_column442 .byte 3 # Abbrev [3] 0xb4:0x8 DW_TAG_formal_parameter443 .byte 2 # DW_AT_location444 .byte 145445 .byte 124446 .long 103 # DW_AT_abstract_origin447 .byte 5 # Abbrev [5] 0xbc:0x8 DW_TAG_variable448 .byte 2 # DW_AT_location449 .byte 145450 .byte 120451 .long 111 # DW_AT_abstract_origin452 .byte 0 # End Of Children Mark453 .byte 0 # End Of Children Mark454 .byte 13 # Abbrev [13] 0xc6:0x5 DW_TAG_pointer_type455 .long 203 # DW_AT_type456 .byte 13 # Abbrev [13] 0xcb:0x5 DW_TAG_pointer_type457 .long 208 # DW_AT_type458 .byte 14 # Abbrev [14] 0xd0:0x5 DW_TAG_const_type459 .long 213 # DW_AT_type460 .byte 8 # Abbrev [8] 0xd5:0x4 DW_TAG_base_type461 .byte 10 # DW_AT_name462 .byte 6 # DW_AT_encoding463 .byte 1 # DW_AT_byte_size464 .byte 0 # End Of Children Mark465.Ldebug_info_dwo_end0:466 .section .debug_abbrev.dwo,"e",@progbits467 .byte 1 # Abbreviation Code468 .byte 17 # DW_TAG_compile_unit469 .byte 1 # DW_CHILDREN_yes470 .byte 37 # DW_AT_producer471 .byte 37 # DW_FORM_strx1472 .byte 19 # DW_AT_language473 .byte 5 # DW_FORM_data2474 .byte 3 # DW_AT_name475 .byte 37 # DW_FORM_strx1476 .byte 118 # DW_AT_dwo_name477 .byte 37 # DW_FORM_strx1478 .byte 0 # EOM(1)479 .byte 0 # EOM(2)480 .byte 2 # Abbreviation Code481 .byte 46 # DW_TAG_subprogram482 .byte 1 # DW_CHILDREN_yes483 .byte 85 # DW_AT_ranges484 .byte 35 # DW_FORM_rnglistx485 .byte 64 # DW_AT_frame_base486 .byte 24 # DW_FORM_exprloc487 .byte 49 # DW_AT_abstract_origin488 .byte 19 # DW_FORM_ref4489 .byte 0 # EOM(1)490 .byte 0 # EOM(2)491 .byte 3 # Abbreviation Code492 .byte 5 # DW_TAG_formal_parameter493 .byte 0 # DW_CHILDREN_no494 .byte 2 # DW_AT_location495 .byte 24 # DW_FORM_exprloc496 .byte 49 # DW_AT_abstract_origin497 .byte 19 # DW_FORM_ref4498 .byte 0 # EOM(1)499 .byte 0 # EOM(2)500 .byte 4 # Abbreviation Code501 .byte 46 # DW_TAG_subprogram502 .byte 1 # DW_CHILDREN_yes503 .byte 17 # DW_AT_low_pc504 .byte 27 # DW_FORM_addrx505 .byte 18 # DW_AT_high_pc506 .byte 6 # DW_FORM_data4507 .byte 64 # DW_AT_frame_base508 .byte 24 # DW_FORM_exprloc509 .byte 49 # DW_AT_abstract_origin510 .byte 19 # DW_FORM_ref4511 .byte 0 # EOM(1)512 .byte 0 # EOM(2)513 .byte 5 # Abbreviation Code514 .byte 52 # DW_TAG_variable515 .byte 0 # DW_CHILDREN_no516 .byte 2 # DW_AT_location517 .byte 24 # DW_FORM_exprloc518 .byte 49 # DW_AT_abstract_origin519 .byte 19 # DW_FORM_ref4520 .byte 0 # EOM(1)521 .byte 0 # EOM(2)522 .byte 6 # Abbreviation Code523 .byte 46 # DW_TAG_subprogram524 .byte 1 # DW_CHILDREN_yes525 .byte 110 # DW_AT_linkage_name526 .byte 37 # DW_FORM_strx1527 .byte 3 # DW_AT_name528 .byte 37 # DW_FORM_strx1529 .byte 58 # DW_AT_decl_file530 .byte 11 # DW_FORM_data1531 .byte 59 # DW_AT_decl_line532 .byte 11 # DW_FORM_data1533 .byte 73 # DW_AT_type534 .byte 19 # DW_FORM_ref4535 .byte 63 # DW_AT_external536 .byte 25 # DW_FORM_flag_present537 .byte 32 # DW_AT_inline538 .byte 33 # DW_FORM_implicit_const539 .byte 1540 .byte 0 # EOM(1)541 .byte 0 # EOM(2)542 .byte 7 # Abbreviation Code543 .byte 5 # DW_TAG_formal_parameter544 .byte 0 # DW_CHILDREN_no545 .byte 3 # DW_AT_name546 .byte 37 # DW_FORM_strx1547 .byte 58 # DW_AT_decl_file548 .byte 11 # DW_FORM_data1549 .byte 59 # DW_AT_decl_line550 .byte 11 # DW_FORM_data1551 .byte 73 # DW_AT_type552 .byte 19 # DW_FORM_ref4553 .byte 0 # EOM(1)554 .byte 0 # EOM(2)555 .byte 8 # Abbreviation Code556 .byte 36 # DW_TAG_base_type557 .byte 0 # DW_CHILDREN_no558 .byte 3 # DW_AT_name559 .byte 37 # DW_FORM_strx1560 .byte 62 # DW_AT_encoding561 .byte 11 # DW_FORM_data1562 .byte 11 # DW_AT_byte_size563 .byte 11 # DW_FORM_data1564 .byte 0 # EOM(1)565 .byte 0 # EOM(2)566 .byte 9 # Abbreviation Code567 .byte 52 # DW_TAG_variable568 .byte 0 # DW_CHILDREN_no569 .byte 3 # DW_AT_name570 .byte 37 # DW_FORM_strx1571 .byte 58 # DW_AT_decl_file572 .byte 11 # DW_FORM_data1573 .byte 59 # DW_AT_decl_line574 .byte 11 # DW_FORM_data1575 .byte 73 # DW_AT_type576 .byte 19 # DW_FORM_ref4577 .byte 0 # EOM(1)578 .byte 0 # EOM(2)579 .byte 10 # Abbreviation Code580 .byte 46 # DW_TAG_subprogram581 .byte 1 # DW_CHILDREN_yes582 .byte 85 # DW_AT_ranges583 .byte 35 # DW_FORM_rnglistx584 .byte 64 # DW_AT_frame_base585 .byte 24 # DW_FORM_exprloc586 .byte 3 # DW_AT_name587 .byte 37 # DW_FORM_strx1588 .byte 58 # DW_AT_decl_file589 .byte 11 # DW_FORM_data1590 .byte 59 # DW_AT_decl_line591 .byte 11 # DW_FORM_data1592 .byte 73 # DW_AT_type593 .byte 19 # DW_FORM_ref4594 .byte 63 # DW_AT_external595 .byte 25 # DW_FORM_flag_present596 .byte 0 # EOM(1)597 .byte 0 # EOM(2)598 .byte 11 # Abbreviation Code599 .byte 5 # DW_TAG_formal_parameter600 .byte 0 # DW_CHILDREN_no601 .byte 2 # DW_AT_location602 .byte 24 # DW_FORM_exprloc603 .byte 3 # DW_AT_name604 .byte 37 # DW_FORM_strx1605 .byte 58 # DW_AT_decl_file606 .byte 11 # DW_FORM_data1607 .byte 59 # DW_AT_decl_line608 .byte 11 # DW_FORM_data1609 .byte 73 # DW_AT_type610 .byte 19 # DW_FORM_ref4611 .byte 0 # EOM(1)612 .byte 0 # EOM(2)613 .byte 12 # Abbreviation Code614 .byte 29 # DW_TAG_inlined_subroutine615 .byte 1 # DW_CHILDREN_yes616 .byte 49 # DW_AT_abstract_origin617 .byte 19 # DW_FORM_ref4618 .byte 85 # DW_AT_ranges619 .byte 35 # DW_FORM_rnglistx620 .byte 88 # DW_AT_call_file621 .byte 11 # DW_FORM_data1622 .byte 89 # DW_AT_call_line623 .byte 11 # DW_FORM_data1624 .byte 87 # DW_AT_call_column625 .byte 11 # DW_FORM_data1626 .byte 0 # EOM(1)627 .byte 0 # EOM(2)628 .byte 13 # Abbreviation Code629 .byte 15 # DW_TAG_pointer_type630 .byte 0 # DW_CHILDREN_no631 .byte 73 # DW_AT_type632 .byte 19 # DW_FORM_ref4633 .byte 0 # EOM(1)634 .byte 0 # EOM(2)635 .byte 14 # Abbreviation Code636 .byte 38 # DW_TAG_const_type637 .byte 0 # DW_CHILDREN_no638 .byte 73 # DW_AT_type639 .byte 19 # DW_FORM_ref4640 .byte 0 # EOM(1)641 .byte 0 # EOM(2)642 .byte 0 # EOM(3)643 .section .debug_rnglists.dwo,"e",@progbits644 .long .Ldebug_list_header_end1-.Ldebug_list_header_start1 # Length645.Ldebug_list_header_start1:646 .short 5 # Version647 .byte 8 # Address size648 .byte 0 # Segment selector size649 .long 4 # Offset entry count650.Lrnglists_dwo_table_base0:651 .long .Ldebug_ranges0-.Lrnglists_dwo_table_base0652 .long .Ldebug_ranges1-.Lrnglists_dwo_table_base0653 .long .Ldebug_ranges2-.Lrnglists_dwo_table_base0654 .long .Ldebug_ranges3-.Lrnglists_dwo_table_base0655.Ldebug_ranges0:656 .byte 3 # DW_RLE_startx_length657 .byte 0 # start index658 .uleb128 .LBB_END0_1-_Z7doStuffi.__part.1 # length659 .byte 3 # DW_RLE_startx_length660 .byte 1 # start index661 .uleb128 .LBB_END0_2-_Z7doStuffi.__part.2 # length662 .byte 3 # DW_RLE_startx_length663 .byte 2 # start index664 .uleb128 .Lfunc_end0-.Lfunc_begin0 # length665 .byte 0 # DW_RLE_end_of_list666.Ldebug_ranges1:667 .byte 3 # DW_RLE_startx_length668 .byte 4 # start index669 .uleb128 .LBB_END2_1-main.__part.1 # length670 .byte 3 # DW_RLE_startx_length671 .byte 5 # start index672 .uleb128 .LBB_END2_2-main.__part.2 # length673 .byte 3 # DW_RLE_startx_length674 .byte 6 # start index675 .uleb128 .Lfunc_end2-.Lfunc_begin2 # length676 .byte 0 # DW_RLE_end_of_list677.Ldebug_ranges2:678 .byte 1 # DW_RLE_base_addressx679 .byte 6 # base address index680 .byte 4 # DW_RLE_offset_pair681 .uleb128 .Ltmp4-.Lfunc_begin2 # starting offset682 .uleb128 .Lfunc_end2-.Lfunc_begin2 # ending offset683 .byte 3 # DW_RLE_startx_length684 .byte 4 # start index685 .uleb128 .LBB_END2_1-main.__part.1 # length686 .byte 3 # DW_RLE_startx_length687 .byte 5 # start index688 .uleb128 .Ltmp6-main.__part.2 # length689 .byte 0 # DW_RLE_end_of_list690.Ldebug_ranges3:691 .byte 1 # DW_RLE_base_addressx692 .byte 5 # base address index693 .byte 4 # DW_RLE_offset_pair694 .uleb128 .Ltmp7-main.__part.2 # starting offset695 .uleb128 .Ltmp8-main.__part.2 # ending offset696 .byte 0 # DW_RLE_end_of_list697.Ldebug_list_header_end1:698 .section .debug_addr,"",@progbits699 .long .Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution700.Ldebug_addr_start0:701 .short 5 # DWARF version number702 .byte 8 # Address size703 .byte 0 # Segment selector size704.Laddr_table_base0:705 .quad _Z7doStuffi.__part.1706 .quad _Z7doStuffi.__part.2707 .quad .Lfunc_begin0708 .quad .Lfunc_begin1709 .quad main.__part.1710 .quad main.__part.2711 .quad .Lfunc_begin2712.Ldebug_addr_end0:713 .section .debug_gnu_pubnames,"",@progbits714 .long .LpubNames_end0-.LpubNames_start0 # Length of Public Names Info715.LpubNames_start0:716 .short 2 # DWARF Version717 .long .Lcu_begin0 # Offset of Compilation Unit Info718 .long 48 # Compilation Unit Length719 .long 72 # DIE offset720 .byte 48 # Attributes: FUNCTION, EXTERNAL721 .asciz "doStuff" # External Name722 .long 94 # DIE offset723 .byte 48 # Attributes: FUNCTION, EXTERNAL724 .asciz "doStuff2" # External Name725 .long 120 # DIE offset726 .byte 48 # Attributes: FUNCTION, EXTERNAL727 .asciz "main" # External Name728 .long 0 # End Mark729.LpubNames_end0:730 .section .debug_gnu_pubtypes,"",@progbits731 .long .LpubTypes_end0-.LpubTypes_start0 # Length of Public Types Info732.LpubTypes_start0:733 .short 2 # DWARF Version734 .long .Lcu_begin0 # Offset of Compilation Unit Info735 .long 48 # Compilation Unit Length736 .long 90 # DIE offset737 .byte 144 # Attributes: TYPE, STATIC738 .asciz "int" # External Name739 .long 213 # DIE offset740 .byte 144 # Attributes: TYPE, STATIC741 .asciz "char" # External Name742 .long 0 # End Mark743.LpubTypes_end0:744 .ident "clang version 18.0.0 (git@github.com:llvm/llvm-project.git 3a8db0f4bfb57348f49d9603119fa157114bbf8e)"745 .section ".note.GNU-stack","",@progbits746 .addrsig747 .section .debug_line,"",@progbits748.Lline_table_start0:749