1## clang++ -fbasic-block-sections=all -ffunction-sections -g2 -gdwarf-4 -gsplit-dwarf -fdebug-compilation-dir='.' 2## __attribute__((always_inline)) 3## int doStuffOther(int val) { 4## if (val) 5## ++val; 6## return val; 7## } 8## __attribute__((always_inline)) 9## int doStuffOther2(int val) { 10## int foo = 3; 11## return val + foo; 12## } 13## 14## 15## int mainOther(int argc, const char** argv) { 16## return doStuffOther(argc) + doStuffOther2(argc);; 17## } 18 19 .text 20 .file "mainOther.cpp" 21 .section .text._Z12doStuffOtheri,"ax",@progbits 22 .globl _Z12doStuffOtheri # -- Begin function _Z12doStuffOtheri 23 .p2align 4, 0x90 24 .type _Z12doStuffOtheri,@function 25_Z12doStuffOtheri: # @_Z12doStuffOtheri 26.Lfunc_begin0: 27 .file 1 "." "mainOther.cpp" 28 .loc 1 2 0 # mainOther.cpp:2:0 29 .cfi_startproc 30# %bb.0: # %entry 31 pushq %rbp 32 .cfi_def_cfa_offset 16 33 .cfi_offset %rbp, -16 34 movq %rsp, %rbp 35 .cfi_def_cfa_register %rbp 36 movl %edi, -4(%rbp) 37.Ltmp0: 38 .loc 1 3 8 prologue_end # mainOther.cpp:3:8 39 cmpl $0, -4(%rbp) 40.Ltmp1: 41 .loc 1 3 8 is_stmt 0 # mainOther.cpp:3:8 42 je _Z12doStuffOtheri.__part.2 43 jmp _Z12doStuffOtheri.__part.1 44.LBB_END0_0: 45 .cfi_endproc 46 .section .text._Z12doStuffOtheri,"ax",@progbits,unique,1 47_Z12doStuffOtheri.__part.1: # %if.then 48 .cfi_startproc 49 .cfi_def_cfa %rbp, 16 50 .cfi_offset %rbp, -16 51 .loc 1 4 6 is_stmt 1 # mainOther.cpp:4:6 52 movl -4(%rbp), %eax 53 addl $1, %eax 54 movl %eax, -4(%rbp) 55 jmp _Z12doStuffOtheri.__part.2 56.LBB_END0_1: 57 .size _Z12doStuffOtheri.__part.1, .LBB_END0_1-_Z12doStuffOtheri.__part.1 58 .cfi_endproc 59 .section .text._Z12doStuffOtheri,"ax",@progbits,unique,2 60_Z12doStuffOtheri.__part.2: # %if.end 61 .cfi_startproc 62 .cfi_def_cfa %rbp, 16 63 .cfi_offset %rbp, -16 64 .loc 1 5 11 # mainOther.cpp:5:11 65 movl -4(%rbp), %eax 66 .loc 1 5 4 epilogue_begin is_stmt 0 # mainOther.cpp:5:4 67 popq %rbp 68 .cfi_def_cfa %rsp, 8 69 retq 70.LBB_END0_2: 71 .size _Z12doStuffOtheri.__part.2, .LBB_END0_2-_Z12doStuffOtheri.__part.2 72 .cfi_endproc 73 .section .text._Z12doStuffOtheri,"ax",@progbits 74.Lfunc_end0: 75 .size _Z12doStuffOtheri, .Lfunc_end0-_Z12doStuffOtheri 76 # -- End function 77 .section .text._Z13doStuffOther2i,"ax",@progbits 78 .globl _Z13doStuffOther2i # -- Begin function _Z13doStuffOther2i 79 .p2align 4, 0x90 80 .type _Z13doStuffOther2i,@function 81_Z13doStuffOther2i: # @_Z13doStuffOther2i 82.Lfunc_begin1: 83 .loc 1 8 0 is_stmt 1 # mainOther.cpp:8:0 84 .cfi_startproc 85# %bb.0: # %entry 86 pushq %rbp 87 .cfi_def_cfa_offset 16 88 .cfi_offset %rbp, -16 89 movq %rsp, %rbp 90 .cfi_def_cfa_register %rbp 91 movl %edi, -4(%rbp) 92.Ltmp2: 93 .loc 1 9 8 prologue_end # mainOther.cpp:9:8 94 movl $3, -8(%rbp) 95 .loc 1 10 11 # mainOther.cpp:10:11 96 movl -4(%rbp), %eax 97 .loc 1 10 15 is_stmt 0 # mainOther.cpp:10:15 98 addl -8(%rbp), %eax 99 .loc 1 10 4 epilogue_begin # mainOther.cpp:10:4 100 popq %rbp 101 .cfi_def_cfa %rsp, 8 102 retq 103.LBB_END1_0: 104 .cfi_endproc 105.Lfunc_end1: 106 .size _Z13doStuffOther2i, .Lfunc_end1-_Z13doStuffOther2i 107 # -- End function 108 .section .text._Z9mainOtheriPPKc,"ax",@progbits 109 .globl _Z9mainOtheriPPKc # -- Begin function _Z9mainOtheriPPKc 110 .p2align 4, 0x90 111 .type _Z9mainOtheriPPKc,@function 112_Z9mainOtheriPPKc: # @_Z9mainOtheriPPKc 113.Lfunc_begin2: 114 .loc 1 14 0 is_stmt 1 # mainOther.cpp:14:0 115 .cfi_startproc 116# %bb.0: # %entry 117 pushq %rbp 118 .cfi_def_cfa_offset 16 119 .cfi_offset %rbp, -16 120 movq %rsp, %rbp 121 .cfi_def_cfa_register %rbp 122 movl %edi, -16(%rbp) 123 movq %rsi, -24(%rbp) 124.Ltmp3: 125 .loc 1 15 27 prologue_end # mainOther.cpp:15:27 126 movl -16(%rbp), %eax 127 movl %eax, -12(%rbp) 128.Ltmp4: 129 .loc 1 3 8 # mainOther.cpp:3:8 130 cmpl $0, -12(%rbp) 131.Ltmp5: 132 .loc 1 3 8 is_stmt 0 # mainOther.cpp:3:8 133 je _Z9mainOtheriPPKc.__part.2 134 jmp _Z9mainOtheriPPKc.__part.1 135.LBB_END2_0: 136 .cfi_endproc 137 .section .text._Z9mainOtheriPPKc,"ax",@progbits,unique,3 138_Z9mainOtheriPPKc.__part.1: # %if.then.i 139 .cfi_startproc 140 .cfi_def_cfa %rbp, 16 141 .cfi_offset %rbp, -16 142 .loc 1 4 6 is_stmt 1 # mainOther.cpp:4:6 143 movl -12(%rbp), %eax 144 addl $1, %eax 145 movl %eax, -12(%rbp) 146 jmp _Z9mainOtheriPPKc.__part.2 147.LBB_END2_1: 148 .size _Z9mainOtheriPPKc.__part.1, .LBB_END2_1-_Z9mainOtheriPPKc.__part.1 149 .cfi_endproc 150 .section .text._Z9mainOtheriPPKc,"ax",@progbits,unique,4 151_Z9mainOtheriPPKc.__part.2: # %_Z12doStuffOtheri.exit 152 .cfi_startproc 153 .cfi_def_cfa %rbp, 16 154 .cfi_offset %rbp, -16 155 .loc 1 5 11 # mainOther.cpp:5:11 156 movl -12(%rbp), %eax 157.Ltmp6: 158 .loc 1 15 49 # mainOther.cpp:15:49 159 movl -16(%rbp), %ecx 160 movl %ecx, -4(%rbp) 161.Ltmp7: 162 .loc 1 9 8 # mainOther.cpp:9:8 163 movl $3, -8(%rbp) 164 .loc 1 10 11 # mainOther.cpp:10:11 165 movl -4(%rbp), %ecx 166 .loc 1 10 15 is_stmt 0 # mainOther.cpp:10:15 167 addl -8(%rbp), %ecx 168.Ltmp8: 169 .loc 1 15 33 is_stmt 1 # mainOther.cpp:15:33 170 addl %ecx, %eax 171 .loc 1 15 6 epilogue_begin is_stmt 0 # mainOther.cpp:15:6 172 popq %rbp 173 .cfi_def_cfa %rsp, 8 174 retq 175.LBB_END2_2: 176 .size _Z9mainOtheriPPKc.__part.2, .LBB_END2_2-_Z9mainOtheriPPKc.__part.2 177 .cfi_endproc 178 .section .text._Z9mainOtheriPPKc,"ax",@progbits 179.Lfunc_end2: 180 .size _Z9mainOtheriPPKc, .Lfunc_end2-_Z9mainOtheriPPKc 181 # -- End function 182 .section .debug_abbrev,"",@progbits 183 .byte 1 # Abbreviation Code 184 .byte 17 # DW_TAG_compile_unit 185 .byte 0 # DW_CHILDREN_no 186 .byte 16 # DW_AT_stmt_list 187 .byte 23 # DW_FORM_sec_offset 188 .byte 27 # DW_AT_comp_dir 189 .byte 14 # DW_FORM_strp 190 .ascii "\264B" # DW_AT_GNU_pubnames 191 .byte 25 # DW_FORM_flag_present 192 .ascii "\260B" # DW_AT_GNU_dwo_name 193 .byte 14 # DW_FORM_strp 194 .ascii "\261B" # DW_AT_GNU_dwo_id 195 .byte 7 # DW_FORM_data8 196 .ascii "\262B" # DW_AT_GNU_ranges_base 197 .byte 23 # DW_FORM_sec_offset 198 .byte 17 # DW_AT_low_pc 199 .byte 1 # DW_FORM_addr 200 .byte 85 # DW_AT_ranges 201 .byte 23 # DW_FORM_sec_offset 202 .ascii "\263B" # DW_AT_GNU_addr_base 203 .byte 23 # DW_FORM_sec_offset 204 .byte 0 # EOM(1) 205 .byte 0 # EOM(2) 206 .byte 0 # EOM(3) 207 .section .debug_info,"",@progbits 208.Lcu_begin0: 209 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit 210.Ldebug_info_start0: 211 .short 4 # DWARF version number 212 .long .debug_abbrev # Offset Into Abbrev. Section 213 .byte 8 # Address Size (in bytes) 214 .byte 1 # Abbrev [1] 0xb:0x29 DW_TAG_compile_unit 215 .long .Lline_table_start0 # DW_AT_stmt_list 216 .long .Lskel_string0 # DW_AT_comp_dir 217 # DW_AT_GNU_pubnames 218 .long .Lskel_string1 # DW_AT_GNU_dwo_name 219 .quad -1082921489565291703 # DW_AT_GNU_dwo_id 220 .long .debug_ranges # DW_AT_GNU_ranges_base 221 .quad 0 # DW_AT_low_pc 222 .long .Ldebug_ranges3 # DW_AT_ranges 223 .long .Laddr_table_base0 # DW_AT_GNU_addr_base 224.Ldebug_info_end0: 225 .section .debug_ranges,"",@progbits 226.Ldebug_ranges0: 227 .quad _Z12doStuffOtheri.__part.1 228 .quad .LBB_END0_1 229 .quad _Z12doStuffOtheri.__part.2 230 .quad .LBB_END0_2 231 .quad .Lfunc_begin0 232 .quad .Lfunc_end0 233 .quad 0 234 .quad 0 235.Ldebug_ranges1: 236 .quad _Z9mainOtheriPPKc.__part.1 237 .quad .LBB_END2_1 238 .quad _Z9mainOtheriPPKc.__part.2 239 .quad .LBB_END2_2 240 .quad .Lfunc_begin2 241 .quad .Lfunc_end2 242 .quad 0 243 .quad 0 244.Ldebug_ranges2: 245 .quad .Ltmp4 246 .quad .Lfunc_end2 247 .quad _Z9mainOtheriPPKc.__part.1 248 .quad .LBB_END2_1 249 .quad _Z9mainOtheriPPKc.__part.2 250 .quad .Ltmp6 251 .quad 0 252 .quad 0 253.Ldebug_ranges3: 254 .quad _Z12doStuffOtheri.__part.1 255 .quad .LBB_END0_1 256 .quad _Z12doStuffOtheri.__part.2 257 .quad .LBB_END0_2 258 .quad .Lfunc_begin0 259 .quad .Lfunc_end0 260 .quad .Lfunc_begin1 261 .quad .Lfunc_end1 262 .quad _Z9mainOtheriPPKc.__part.1 263 .quad .LBB_END2_1 264 .quad _Z9mainOtheriPPKc.__part.2 265 .quad .LBB_END2_2 266 .quad .Lfunc_begin2 267 .quad .Lfunc_end2 268 .quad 0 269 .quad 0 270 .section .debug_str,"MS",@progbits,1 271.Lskel_string0: 272 .asciz "." # string offset=0 273.Lskel_string1: 274 .asciz "mainOther.dwo" # string offset=2 275 .section .debug_str.dwo,"eMS",@progbits,1 276.Linfo_string0: 277 .asciz "_Z12doStuffOtheri" # string offset=0 278.Linfo_string1: 279 .asciz "doStuffOther" # string offset=18 280.Linfo_string2: 281 .asciz "int" # string offset=31 282.Linfo_string3: 283 .asciz "val" # string offset=35 284.Linfo_string4: 285 .asciz "_Z13doStuffOther2i" # string offset=39 286.Linfo_string5: 287 .asciz "doStuffOther2" # string offset=58 288.Linfo_string6: 289 .asciz "foo" # string offset=72 290.Linfo_string7: 291 .asciz "_Z9mainOtheriPPKc" # string offset=76 292.Linfo_string8: 293 .asciz "mainOther" # string offset=94 294.Linfo_string9: 295 .asciz "argc" # string offset=104 296.Linfo_string10: 297 .asciz "argv" # string offset=109 298.Linfo_string11: 299 .asciz "char" # string offset=114 300.Linfo_string12: 301 .asciz "clang version 19.0.0git (git@github.com:llvm/llvm-project.git df542e1ed82bd4e5a9e345d3a3ae63a76893a0cf)" # string offset=119 302.Linfo_string13: 303 .asciz "mainOther.cpp" # string offset=223 304.Linfo_string14: 305 .asciz "mainOther.dwo" # string offset=237 306 .section .debug_str_offsets.dwo,"e",@progbits 307 .long 0 308 .long 18 309 .long 31 310 .long 35 311 .long 39 312 .long 58 313 .long 72 314 .long 76 315 .long 94 316 .long 104 317 .long 109 318 .long 114 319 .long 119 320 .long 223 321 .long 237 322 .section .debug_info.dwo,"e",@progbits 323 .long .Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit 324.Ldebug_info_dwo_start0: 325 .short 4 # DWARF version number 326 .long 0 # Offset Into Abbrev. Section 327 .byte 8 # Address Size (in bytes) 328 .byte 1 # Abbrev [1] 0xb:0xde DW_TAG_compile_unit 329 .byte 12 # DW_AT_producer 330 .short 33 # DW_AT_language 331 .byte 13 # DW_AT_name 332 .byte 14 # DW_AT_GNU_dwo_name 333 .quad -1082921489565291703 # DW_AT_GNU_dwo_id 334 .byte 2 # Abbrev [2] 0x19:0x14 DW_TAG_subprogram 335 .long .Ldebug_ranges0-.debug_ranges # DW_AT_ranges 336 .byte 1 # DW_AT_frame_base 337 .byte 86 338 .long 74 # DW_AT_abstract_origin 339 .byte 3 # Abbrev [3] 0x24:0x8 DW_TAG_formal_parameter 340 .byte 2 # DW_AT_location 341 .byte 145 342 .byte 124 343 .long 84 # DW_AT_abstract_origin 344 .byte 0 # End Of Children Mark 345 .byte 4 # Abbrev [4] 0x2d:0x1d DW_TAG_subprogram 346 .byte 3 # DW_AT_low_pc 347 .long .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc 348 .byte 1 # DW_AT_frame_base 349 .byte 86 350 .long 97 # DW_AT_abstract_origin 351 .byte 3 # Abbrev [3] 0x39:0x8 DW_TAG_formal_parameter 352 .byte 2 # DW_AT_location 353 .byte 145 354 .byte 124 355 .long 107 # DW_AT_abstract_origin 356 .byte 5 # Abbrev [5] 0x41:0x8 DW_TAG_variable 357 .byte 2 # DW_AT_location 358 .byte 145 359 .byte 120 360 .long 115 # DW_AT_abstract_origin 361 .byte 0 # End Of Children Mark 362 .byte 6 # Abbrev [6] 0x4a:0x13 DW_TAG_subprogram 363 .byte 0 # DW_AT_linkage_name 364 .byte 1 # DW_AT_name 365 .byte 1 # DW_AT_decl_file 366 .byte 2 # DW_AT_decl_line 367 .long 93 # DW_AT_type 368 # DW_AT_external 369 .byte 1 # DW_AT_inline 370 .byte 7 # Abbrev [7] 0x54:0x8 DW_TAG_formal_parameter 371 .byte 3 # DW_AT_name 372 .byte 1 # DW_AT_decl_file 373 .byte 2 # DW_AT_decl_line 374 .long 93 # DW_AT_type 375 .byte 0 # End Of Children Mark 376 .byte 8 # Abbrev [8] 0x5d:0x4 DW_TAG_base_type 377 .byte 2 # DW_AT_name 378 .byte 5 # DW_AT_encoding 379 .byte 4 # DW_AT_byte_size 380 .byte 6 # Abbrev [6] 0x61:0x1b DW_TAG_subprogram 381 .byte 4 # DW_AT_linkage_name 382 .byte 5 # DW_AT_name 383 .byte 1 # DW_AT_decl_file 384 .byte 8 # DW_AT_decl_line 385 .long 93 # DW_AT_type 386 # DW_AT_external 387 .byte 1 # DW_AT_inline 388 .byte 7 # Abbrev [7] 0x6b:0x8 DW_TAG_formal_parameter 389 .byte 3 # DW_AT_name 390 .byte 1 # DW_AT_decl_file 391 .byte 8 # DW_AT_decl_line 392 .long 93 # DW_AT_type 393 .byte 9 # Abbrev [9] 0x73:0x8 DW_TAG_variable 394 .byte 6 # DW_AT_name 395 .byte 1 # DW_AT_decl_file 396 .byte 9 # DW_AT_decl_line 397 .long 93 # DW_AT_type 398 .byte 0 # End Of Children Mark 399 .byte 10 # Abbrev [10] 0x7c:0x59 DW_TAG_subprogram 400 .long .Ldebug_ranges1-.debug_ranges # DW_AT_ranges 401 .byte 1 # DW_AT_frame_base 402 .byte 86 403 .byte 7 # DW_AT_linkage_name 404 .byte 8 # DW_AT_name 405 .byte 1 # DW_AT_decl_file 406 .byte 14 # DW_AT_decl_line 407 .long 93 # DW_AT_type 408 # DW_AT_external 409 .byte 11 # Abbrev [11] 0x8b:0xb DW_TAG_formal_parameter 410 .byte 2 # DW_AT_location 411 .byte 145 412 .byte 112 413 .byte 9 # DW_AT_name 414 .byte 1 # DW_AT_decl_file 415 .byte 14 # DW_AT_decl_line 416 .long 93 # DW_AT_type 417 .byte 11 # Abbrev [11] 0x96:0xb DW_TAG_formal_parameter 418 .byte 2 # DW_AT_location 419 .byte 145 420 .byte 104 421 .byte 10 # DW_AT_name 422 .byte 1 # DW_AT_decl_file 423 .byte 14 # DW_AT_decl_line 424 .long 213 # DW_AT_type 425 .byte 12 # Abbrev [12] 0xa1:0x15 DW_TAG_inlined_subroutine 426 .long 74 # DW_AT_abstract_origin 427 .long .Ldebug_ranges2-.debug_ranges # DW_AT_ranges 428 .byte 1 # DW_AT_call_file 429 .byte 15 # DW_AT_call_line 430 .byte 14 # DW_AT_call_column 431 .byte 3 # Abbrev [3] 0xad:0x8 DW_TAG_formal_parameter 432 .byte 2 # DW_AT_location 433 .byte 145 434 .byte 116 435 .long 84 # DW_AT_abstract_origin 436 .byte 0 # End Of Children Mark 437 .byte 13 # Abbrev [13] 0xb6:0x1e DW_TAG_inlined_subroutine 438 .long 97 # DW_AT_abstract_origin 439 .byte 7 # DW_AT_low_pc 440 .long .Ltmp8-.Ltmp7 # DW_AT_high_pc 441 .byte 1 # DW_AT_call_file 442 .byte 15 # DW_AT_call_line 443 .byte 35 # DW_AT_call_column 444 .byte 3 # Abbrev [3] 0xc3:0x8 DW_TAG_formal_parameter 445 .byte 2 # DW_AT_location 446 .byte 145 447 .byte 124 448 .long 107 # DW_AT_abstract_origin 449 .byte 5 # Abbrev [5] 0xcb:0x8 DW_TAG_variable 450 .byte 2 # DW_AT_location 451 .byte 145 452 .byte 120 453 .long 115 # DW_AT_abstract_origin 454 .byte 0 # End Of Children Mark 455 .byte 0 # End Of Children Mark 456 .byte 14 # Abbrev [14] 0xd5:0x5 DW_TAG_pointer_type 457 .long 218 # DW_AT_type 458 .byte 14 # Abbrev [14] 0xda:0x5 DW_TAG_pointer_type 459 .long 223 # DW_AT_type 460 .byte 15 # Abbrev [15] 0xdf:0x5 DW_TAG_const_type 461 .long 228 # DW_AT_type 462 .byte 8 # Abbrev [8] 0xe4:0x4 DW_TAG_base_type 463 .byte 11 # DW_AT_name 464 .byte 6 # DW_AT_encoding 465 .byte 1 # DW_AT_byte_size 466 .byte 0 # End Of Children Mark 467.Ldebug_info_dwo_end0: 468 .section .debug_abbrev.dwo,"e",@progbits 469 .byte 1 # Abbreviation Code 470 .byte 17 # DW_TAG_compile_unit 471 .byte 1 # DW_CHILDREN_yes 472 .byte 37 # DW_AT_producer 473 .ascii "\202>" # DW_FORM_GNU_str_index 474 .byte 19 # DW_AT_language 475 .byte 5 # DW_FORM_data2 476 .byte 3 # DW_AT_name 477 .ascii "\202>" # DW_FORM_GNU_str_index 478 .ascii "\260B" # DW_AT_GNU_dwo_name 479 .ascii "\202>" # DW_FORM_GNU_str_index 480 .ascii "\261B" # DW_AT_GNU_dwo_id 481 .byte 7 # DW_FORM_data8 482 .byte 0 # EOM(1) 483 .byte 0 # EOM(2) 484 .byte 2 # Abbreviation Code 485 .byte 46 # DW_TAG_subprogram 486 .byte 1 # DW_CHILDREN_yes 487 .byte 85 # DW_AT_ranges 488 .byte 23 # DW_FORM_sec_offset 489 .byte 64 # DW_AT_frame_base 490 .byte 24 # DW_FORM_exprloc 491 .byte 49 # DW_AT_abstract_origin 492 .byte 19 # DW_FORM_ref4 493 .byte 0 # EOM(1) 494 .byte 0 # EOM(2) 495 .byte 3 # Abbreviation Code 496 .byte 5 # DW_TAG_formal_parameter 497 .byte 0 # DW_CHILDREN_no 498 .byte 2 # DW_AT_location 499 .byte 24 # DW_FORM_exprloc 500 .byte 49 # DW_AT_abstract_origin 501 .byte 19 # DW_FORM_ref4 502 .byte 0 # EOM(1) 503 .byte 0 # EOM(2) 504 .byte 4 # Abbreviation Code 505 .byte 46 # DW_TAG_subprogram 506 .byte 1 # DW_CHILDREN_yes 507 .byte 17 # DW_AT_low_pc 508 .ascii "\201>" # DW_FORM_GNU_addr_index 509 .byte 18 # DW_AT_high_pc 510 .byte 6 # DW_FORM_data4 511 .byte 64 # DW_AT_frame_base 512 .byte 24 # DW_FORM_exprloc 513 .byte 49 # DW_AT_abstract_origin 514 .byte 19 # DW_FORM_ref4 515 .byte 0 # EOM(1) 516 .byte 0 # EOM(2) 517 .byte 5 # Abbreviation Code 518 .byte 52 # DW_TAG_variable 519 .byte 0 # DW_CHILDREN_no 520 .byte 2 # DW_AT_location 521 .byte 24 # DW_FORM_exprloc 522 .byte 49 # DW_AT_abstract_origin 523 .byte 19 # DW_FORM_ref4 524 .byte 0 # EOM(1) 525 .byte 0 # EOM(2) 526 .byte 6 # Abbreviation Code 527 .byte 46 # DW_TAG_subprogram 528 .byte 1 # DW_CHILDREN_yes 529 .byte 110 # DW_AT_linkage_name 530 .ascii "\202>" # DW_FORM_GNU_str_index 531 .byte 3 # DW_AT_name 532 .ascii "\202>" # DW_FORM_GNU_str_index 533 .byte 58 # DW_AT_decl_file 534 .byte 11 # DW_FORM_data1 535 .byte 59 # DW_AT_decl_line 536 .byte 11 # DW_FORM_data1 537 .byte 73 # DW_AT_type 538 .byte 19 # DW_FORM_ref4 539 .byte 63 # DW_AT_external 540 .byte 25 # DW_FORM_flag_present 541 .byte 32 # DW_AT_inline 542 .byte 11 # DW_FORM_data1 543 .byte 0 # EOM(1) 544 .byte 0 # EOM(2) 545 .byte 7 # Abbreviation Code 546 .byte 5 # DW_TAG_formal_parameter 547 .byte 0 # DW_CHILDREN_no 548 .byte 3 # DW_AT_name 549 .ascii "\202>" # DW_FORM_GNU_str_index 550 .byte 58 # DW_AT_decl_file 551 .byte 11 # DW_FORM_data1 552 .byte 59 # DW_AT_decl_line 553 .byte 11 # DW_FORM_data1 554 .byte 73 # DW_AT_type 555 .byte 19 # DW_FORM_ref4 556 .byte 0 # EOM(1) 557 .byte 0 # EOM(2) 558 .byte 8 # Abbreviation Code 559 .byte 36 # DW_TAG_base_type 560 .byte 0 # DW_CHILDREN_no 561 .byte 3 # DW_AT_name 562 .ascii "\202>" # DW_FORM_GNU_str_index 563 .byte 62 # DW_AT_encoding 564 .byte 11 # DW_FORM_data1 565 .byte 11 # DW_AT_byte_size 566 .byte 11 # DW_FORM_data1 567 .byte 0 # EOM(1) 568 .byte 0 # EOM(2) 569 .byte 9 # Abbreviation Code 570 .byte 52 # DW_TAG_variable 571 .byte 0 # DW_CHILDREN_no 572 .byte 3 # DW_AT_name 573 .ascii "\202>" # DW_FORM_GNU_str_index 574 .byte 58 # DW_AT_decl_file 575 .byte 11 # DW_FORM_data1 576 .byte 59 # DW_AT_decl_line 577 .byte 11 # DW_FORM_data1 578 .byte 73 # DW_AT_type 579 .byte 19 # DW_FORM_ref4 580 .byte 0 # EOM(1) 581 .byte 0 # EOM(2) 582 .byte 10 # Abbreviation Code 583 .byte 46 # DW_TAG_subprogram 584 .byte 1 # DW_CHILDREN_yes 585 .byte 85 # DW_AT_ranges 586 .byte 23 # DW_FORM_sec_offset 587 .byte 64 # DW_AT_frame_base 588 .byte 24 # DW_FORM_exprloc 589 .byte 110 # DW_AT_linkage_name 590 .ascii "\202>" # DW_FORM_GNU_str_index 591 .byte 3 # DW_AT_name 592 .ascii "\202>" # DW_FORM_GNU_str_index 593 .byte 58 # DW_AT_decl_file 594 .byte 11 # DW_FORM_data1 595 .byte 59 # DW_AT_decl_line 596 .byte 11 # DW_FORM_data1 597 .byte 73 # DW_AT_type 598 .byte 19 # DW_FORM_ref4 599 .byte 63 # DW_AT_external 600 .byte 25 # DW_FORM_flag_present 601 .byte 0 # EOM(1) 602 .byte 0 # EOM(2) 603 .byte 11 # Abbreviation Code 604 .byte 5 # DW_TAG_formal_parameter 605 .byte 0 # DW_CHILDREN_no 606 .byte 2 # DW_AT_location 607 .byte 24 # DW_FORM_exprloc 608 .byte 3 # DW_AT_name 609 .ascii "\202>" # DW_FORM_GNU_str_index 610 .byte 58 # DW_AT_decl_file 611 .byte 11 # DW_FORM_data1 612 .byte 59 # DW_AT_decl_line 613 .byte 11 # DW_FORM_data1 614 .byte 73 # DW_AT_type 615 .byte 19 # DW_FORM_ref4 616 .byte 0 # EOM(1) 617 .byte 0 # EOM(2) 618 .byte 12 # Abbreviation Code 619 .byte 29 # DW_TAG_inlined_subroutine 620 .byte 1 # DW_CHILDREN_yes 621 .byte 49 # DW_AT_abstract_origin 622 .byte 19 # DW_FORM_ref4 623 .byte 85 # DW_AT_ranges 624 .byte 23 # DW_FORM_sec_offset 625 .byte 88 # DW_AT_call_file 626 .byte 11 # DW_FORM_data1 627 .byte 89 # DW_AT_call_line 628 .byte 11 # DW_FORM_data1 629 .byte 87 # DW_AT_call_column 630 .byte 11 # DW_FORM_data1 631 .byte 0 # EOM(1) 632 .byte 0 # EOM(2) 633 .byte 13 # Abbreviation Code 634 .byte 29 # DW_TAG_inlined_subroutine 635 .byte 1 # DW_CHILDREN_yes 636 .byte 49 # DW_AT_abstract_origin 637 .byte 19 # DW_FORM_ref4 638 .byte 17 # DW_AT_low_pc 639 .ascii "\201>" # DW_FORM_GNU_addr_index 640 .byte 18 # DW_AT_high_pc 641 .byte 6 # DW_FORM_data4 642 .byte 88 # DW_AT_call_file 643 .byte 11 # DW_FORM_data1 644 .byte 89 # DW_AT_call_line 645 .byte 11 # DW_FORM_data1 646 .byte 87 # DW_AT_call_column 647 .byte 11 # DW_FORM_data1 648 .byte 0 # EOM(1) 649 .byte 0 # EOM(2) 650 .byte 14 # Abbreviation Code 651 .byte 15 # DW_TAG_pointer_type 652 .byte 0 # DW_CHILDREN_no 653 .byte 73 # DW_AT_type 654 .byte 19 # DW_FORM_ref4 655 .byte 0 # EOM(1) 656 .byte 0 # EOM(2) 657 .byte 15 # Abbreviation Code 658 .byte 38 # DW_TAG_const_type 659 .byte 0 # DW_CHILDREN_no 660 .byte 73 # DW_AT_type 661 .byte 19 # DW_FORM_ref4 662 .byte 0 # EOM(1) 663 .byte 0 # EOM(2) 664 .byte 0 # EOM(3) 665 .section .debug_addr,"",@progbits 666.Laddr_table_base0: 667 .quad _Z12doStuffOtheri.__part.1 668 .quad _Z12doStuffOtheri.__part.2 669 .quad .Lfunc_begin0 670 .quad .Lfunc_begin1 671 .quad _Z9mainOtheriPPKc.__part.1 672 .quad _Z9mainOtheriPPKc.__part.2 673 .quad .Lfunc_begin2 674 .quad .Ltmp7 675 .section .debug_gnu_pubnames,"",@progbits 676 .long .LpubNames_end0-.LpubNames_start0 # Length of Public Names Info 677.LpubNames_start0: 678 .short 2 # DWARF Version 679 .long .Lcu_begin0 # Offset of Compilation Unit Info 680 .long 52 # Compilation Unit Length 681 .long 74 # DIE offset 682 .byte 48 # Attributes: FUNCTION, EXTERNAL 683 .asciz "doStuffOther" # External Name 684 .long 97 # DIE offset 685 .byte 48 # Attributes: FUNCTION, EXTERNAL 686 .asciz "doStuffOther2" # External Name 687 .long 124 # DIE offset 688 .byte 48 # Attributes: FUNCTION, EXTERNAL 689 .asciz "mainOther" # External Name 690 .long 0 # End Mark 691.LpubNames_end0: 692 .section .debug_gnu_pubtypes,"",@progbits 693 .long .LpubTypes_end0-.LpubTypes_start0 # Length of Public Types Info 694.LpubTypes_start0: 695 .short 2 # DWARF Version 696 .long .Lcu_begin0 # Offset of Compilation Unit Info 697 .long 52 # Compilation Unit Length 698 .long 93 # DIE offset 699 .byte 144 # Attributes: TYPE, STATIC 700 .asciz "int" # External Name 701 .long 228 # DIE offset 702 .byte 144 # Attributes: TYPE, STATIC 703 .asciz "char" # External Name 704 .long 0 # End Mark 705.LpubTypes_end0: 706 .ident "clang version 19.0.0git (git@github.com:llvm/llvm-project.git df542e1ed82bd4e5a9e345d3a3ae63a76893a0cf)" 707 .section ".note.GNU-stack","",@progbits 708 .addrsig 709 .section .debug_line,"",@progbits 710.Lline_table_start0: 711