1# __attribute__((always_inline)) 2# int doStuff(int val) { 3# if (val) 4# ++val; 5# return val; 6# } 7# __attribute__((always_inline)) 8# int doStuffSame(int val) { 9# if (val) 10# ++val; 11# return val; 12# } 13# 14# 15# int main(int argc, const char** argv) { 16# return doStuff(argc) + doStuffSame(argc); 17# } 18# Manually modified to set range to 0. 19 20 .text 21 .file "main.cpp" 22 .section .text._Z7doStuffi,"ax",@progbits 23 .globl _Z7doStuffi # -- Begin function _Z7doStuffi 24 .p2align 4, 0x90 25 .type _Z7doStuffi,@function 26_Z7doStuffi: # @_Z7doStuffi 27.Lfunc_begin0: 28 .file 0 "." "main.cpp" md5 0x5391f0751c21da59df94bf9d3771518e 29 .loc 0 2 0 # main.cpp:2:0 30 .cfi_startproc 31# %bb.0: # %entry 32 pushq %rbp 33 .cfi_def_cfa_offset 16 34 .cfi_offset %rbp, -16 35 movq %rsp, %rbp 36 .cfi_def_cfa_register %rbp 37 movl %edi, -4(%rbp) 38.Ltmp0: 39 .loc 0 3 7 prologue_end # main.cpp:3:7 40 cmpl $0, -4(%rbp) 41.Ltmp1: 42 .loc 0 3 7 is_stmt 0 # main.cpp:3:7 43 je .LBB0_2 44# %bb.1: # %if.then 45.Ltmp2: 46 .loc 0 4 5 is_stmt 1 # main.cpp:4:5 47 movl -4(%rbp), %eax 48 addl $1, %eax 49 movl %eax, -4(%rbp) 50.Ltmp3: 51.LBB0_2: # %if.end 52 .loc 0 5 10 # main.cpp:5:10 53 movl -4(%rbp), %eax 54 .loc 0 5 3 epilogue_begin is_stmt 0 # main.cpp:5:3 55 popq %rbp 56 .cfi_def_cfa %rsp, 8 57 retq 58.Ltmp4: 59.Lfunc_end0: 60 .size _Z7doStuffi, .Lfunc_end0-_Z7doStuffi 61 .cfi_endproc 62 # -- End function 63 .section .text._Z11doStuffSamei,"ax",@progbits 64 .globl _Z11doStuffSamei # -- Begin function _Z11doStuffSamei 65 .p2align 4, 0x90 66 .type _Z11doStuffSamei,@function 67_Z11doStuffSamei: # @_Z11doStuffSamei 68.Lfunc_begin1: 69 .loc 0 8 0 is_stmt 1 # main.cpp:8:0 70 .cfi_startproc 71# %bb.0: # %entry 72 pushq %rbp 73 .cfi_def_cfa_offset 16 74 .cfi_offset %rbp, -16 75 movq %rsp, %rbp 76 .cfi_def_cfa_register %rbp 77 movl %edi, -4(%rbp) 78.Ltmp5: 79 .loc 0 9 11 prologue_end # main.cpp:9:11 80 cmpl $0, -4(%rbp) 81.Ltmp6: 82 .loc 0 9 11 is_stmt 0 # main.cpp:9:11 83 je .LBB1_2 84# %bb.1: # %if.then 85.Ltmp7: 86 .loc 0 10 13 is_stmt 1 # main.cpp:10:13 87 movl -4(%rbp), %eax 88 addl $1, %eax 89 movl %eax, -4(%rbp) 90.Ltmp8: 91.LBB1_2: # %if.end 92 .loc 0 11 16 # main.cpp:11:16 93 movl -4(%rbp), %eax 94 .loc 0 11 9 epilogue_begin is_stmt 0 # main.cpp:11:9 95 popq %rbp 96 .cfi_def_cfa %rsp, 8 97 retq 98.Ltmp9: 99.Lfunc_end1: 100 .size _Z11doStuffSamei, .Lfunc_end1-_Z11doStuffSamei 101 .cfi_endproc 102 # -- End function 103 .section .text.main,"ax",@progbits 104 .globl main # -- Begin function main 105 .p2align 4, 0x90 106 .type main,@function 107main: # @main 108.Lfunc_begin2: 109 .loc 0 15 0 is_stmt 1 # main.cpp:15:0 110 .cfi_startproc 111# %bb.0: # %entry 112 pushq %rbp 113 .cfi_def_cfa_offset 16 114 .cfi_offset %rbp, -16 115 movq %rsp, %rbp 116 .cfi_def_cfa_register %rbp 117 movl $0, -12(%rbp) 118 movl %edi, -16(%rbp) 119 movq %rsi, -24(%rbp) 120.Ltmp10: 121 .loc 0 16 21 prologue_end # main.cpp:16:21 122 movl -16(%rbp), %eax 123 movl %eax, -8(%rbp) 124.Ltmp11: 125 .loc 0 3 7 # main.cpp:3:7 126 cmpl $0, -8(%rbp) 127.Ltmp12: 128 .loc 0 3 7 is_stmt 0 # main.cpp:3:7 129 je .LBB2_2 130# %bb.1: # %if.then.i 131.Ltmp13: 132 .loc 0 4 5 is_stmt 1 # main.cpp:4:5 133 movl -8(%rbp), %eax 134 addl $1, %eax 135 movl %eax, -8(%rbp) 136.Ltmp14: 137.LBB2_2: # %_Z7doStuffi.exit 138 .loc 0 5 10 # main.cpp:5:10 139 movl -8(%rbp), %eax 140 movl %eax, -28(%rbp) # 4-byte Spill 141.Ltmp15: 142 .loc 0 16 41 # main.cpp:16:41 143 movl -16(%rbp), %eax 144 movl %eax, -4(%rbp) 145.Ltmp16: 146 .loc 0 9 11 # main.cpp:9:11 147 cmpl $0, -4(%rbp) 148.Ltmp17: 149 .loc 0 9 11 is_stmt 0 # main.cpp:9:11 150 je .LBB2_4 151# %bb.3: # %if.then.i4 152.Ltmp18: 153 .loc 0 10 13 is_stmt 1 # main.cpp:10:13 154 movl -4(%rbp), %eax 155 addl $1, %eax 156 movl %eax, -4(%rbp) 157.Ltmp19: 158.LBB2_4: # %_Z11doStuffSamei.exit 159 .loc 0 0 13 is_stmt 0 # main.cpp:0:13 160 movl -28(%rbp), %eax # 4-byte Reload 161 .loc 0 16 27 is_stmt 1 # main.cpp:16:27 162 addl -4(%rbp), %eax 163 .loc 0 16 5 epilogue_begin is_stmt 0 # main.cpp:16:5 164 popq %rbp 165 .cfi_def_cfa %rsp, 8 166 retq 167.Ltmp20: 168.Lfunc_end2: 169 .size main, .Lfunc_end2-main 170 .cfi_endproc 171 # -- End function 172 .section .debug_abbrev,"",@progbits 173 .byte 1 # Abbreviation Code 174 .byte 74 # DW_TAG_skeleton_unit 175 .byte 0 # DW_CHILDREN_no 176 .byte 16 # DW_AT_stmt_list 177 .byte 23 # DW_FORM_sec_offset 178 .byte 114 # DW_AT_str_offsets_base 179 .byte 23 # DW_FORM_sec_offset 180 .byte 27 # DW_AT_comp_dir 181 .byte 37 # DW_FORM_strx1 182 .ascii "\264B" # DW_AT_GNU_pubnames 183 .byte 25 # DW_FORM_flag_present 184 .byte 118 # DW_AT_dwo_name 185 .byte 37 # DW_FORM_strx1 186 .byte 17 # DW_AT_low_pc 187 .byte 1 # DW_FORM_addr 188 .byte 85 # DW_AT_ranges 189 .byte 35 # DW_FORM_rnglistx 190 .byte 115 # DW_AT_addr_base 191 .byte 23 # DW_FORM_sec_offset 192 .byte 116 # DW_AT_rnglists_base 193 .byte 23 # DW_FORM_sec_offset 194 .byte 0 # EOM(1) 195 .byte 0 # EOM(2) 196 .byte 0 # EOM(3) 197 .section .debug_info,"",@progbits 198.Lcu_begin0: 199 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit 200.Ldebug_info_start0: 201 .short 5 # DWARF version number 202 .byte 4 # DWARF Unit Type 203 .byte 8 # Address Size (in bytes) 204 .long .debug_abbrev # Offset Into Abbrev. Section 205 .quad 1388808602086005033 206 .byte 1 # Abbrev [1] 0x14:0x1c DW_TAG_skeleton_unit 207 .long .Lline_table_start0 # DW_AT_stmt_list 208 .long .Lstr_offsets_base0 # DW_AT_str_offsets_base 209 .byte 0 # DW_AT_comp_dir 210 # DW_AT_GNU_pubnames 211 .byte 1 # DW_AT_dwo_name 212 .quad 0 # DW_AT_low_pc 213 .byte 0 # DW_AT_ranges 214 .long .Laddr_table_base0 # DW_AT_addr_base 215 .long .Lrnglists_table_base0 # DW_AT_rnglists_base 216.Ldebug_info_end0: 217 .section .debug_rnglists,"",@progbits 218 .long .Ldebug_list_header_end0-.Ldebug_list_header_start0 # Length 219.Ldebug_list_header_start0: 220 .short 5 # Version 221 .byte 8 # Address size 222 .byte 0 # Segment selector size 223 .long 1 # Offset entry count 224.Lrnglists_table_base0: 225 .long .Ldebug_ranges2-.Lrnglists_table_base0 226.Ldebug_ranges2: 227 .byte 3 # DW_RLE_startx_length 228 .byte 0 # start index 229 .uleb128 .Lfunc_end0-.Lfunc_begin0 # length 230 .byte 3 # DW_RLE_startx_length 231 .byte 1 # start index 232 .uleb128 .Lfunc_end1-.Lfunc_begin1 # length 233 .byte 3 # DW_RLE_startx_length 234 .byte 2 # start index 235 .uleb128 .Lfunc_end2-.Lfunc_begin2 # length 236 .byte 0 # DW_RLE_end_of_list 237.Ldebug_list_header_end0: 238 .section .debug_str_offsets,"",@progbits 239 .long 12 # Length of String Offsets Set 240 .short 5 241 .short 0 242.Lstr_offsets_base0: 243 .section .debug_str,"MS",@progbits,1 244.Lskel_string0: 245 .asciz "." # string offset=0 246.Lskel_string1: 247 .asciz "main.dwo" # string offset=38 248 .section .debug_str_offsets,"",@progbits 249 .long .Lskel_string0 250 .long .Lskel_string1 251 .section .debug_str_offsets.dwo,"e",@progbits 252 .long 56 # Length of String Offsets Set 253 .short 5 254 .short 0 255 .section .debug_str.dwo,"eMS",@progbits,1 256.Linfo_string0: 257 .asciz "_Z7doStuffi" # string offset=0 258.Linfo_string1: 259 .asciz "doStuff" # string offset=12 260.Linfo_string2: 261 .asciz "int" # string offset=20 262.Linfo_string3: 263 .asciz "val" # string offset=24 264.Linfo_string4: 265 .asciz "_Z11doStuffSamei" # string offset=28 266.Linfo_string5: 267 .asciz "doStuffSame" # string offset=45 268.Linfo_string6: 269 .asciz "main" # string offset=57 270.Linfo_string7: 271 .asciz "argc" # string offset=62 272.Linfo_string8: 273 .asciz "argv" # string offset=67 274.Linfo_string9: 275 .asciz "char" # string offset=72 276.Linfo_string10: 277 .asciz "clang version 18.0.0 (git@github.com:llvm/llvm-project.git 63dbe7e808d07bdf25bad85301980bc323b0cd64)" # string offset=77 278.Linfo_string11: 279 .asciz "main.cpp" # string offset=178 280.Linfo_string12: 281 .asciz "main.dwo" # string offset=187 282 .section .debug_str_offsets.dwo,"e",@progbits 283 .long 0 284 .long 12 285 .long 20 286 .long 24 287 .long 28 288 .long 45 289 .long 57 290 .long 62 291 .long 67 292 .long 72 293 .long 77 294 .long 178 295 .long 187 296 .section .debug_info.dwo,"e",@progbits 297 .long .Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit 298.Ldebug_info_dwo_start0: 299 .short 5 # DWARF version number 300 .byte 5 # DWARF Unit Type 301 .byte 8 # Address Size (in bytes) 302 .long 0 # Offset Into Abbrev. Section 303 .quad 1388808602086005033 304 .byte 1 # Abbrev [1] 0x14:0xb6 DW_TAG_compile_unit 305 .byte 10 # DW_AT_producer 306 .short 33 # DW_AT_language 307 .byte 11 # DW_AT_name 308 .byte 12 # DW_AT_dwo_name 309 .byte 2 # Abbrev [2] 0x1a:0x15 DW_TAG_subprogram 310 .byte 0 # DW_AT_low_pc 311 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc 312 .byte 1 # DW_AT_frame_base 313 .byte 86 314 .long 68 # DW_AT_abstract_origin 315 .byte 3 # Abbrev [3] 0x26:0x8 DW_TAG_formal_parameter 316 .byte 2 # DW_AT_location 317 .byte 145 318 .byte 124 319 .long 77 # DW_AT_abstract_origin 320 .byte 0 # End Of Children Mark 321 .byte 2 # Abbrev [2] 0x2f:0x15 DW_TAG_subprogram 322 .byte 1 # DW_AT_low_pc 323 .long .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc 324 .byte 1 # DW_AT_frame_base 325 .byte 86 326 .long 90 # DW_AT_abstract_origin 327 .byte 3 # Abbrev [3] 0x3b:0x8 DW_TAG_formal_parameter 328 .byte 2 # DW_AT_location 329 .byte 145 330 .byte 124 331 .long 99 # DW_AT_abstract_origin 332 .byte 0 # End Of Children Mark 333 .byte 4 # Abbrev [4] 0x44:0x12 DW_TAG_subprogram 334 .byte 0 # DW_AT_linkage_name 335 .byte 1 # DW_AT_name 336 .byte 0 # DW_AT_decl_file 337 .byte 2 # DW_AT_decl_line 338 .long 86 # DW_AT_type 339 # DW_AT_external 340 # DW_AT_inline 341 .byte 5 # Abbrev [5] 0x4d:0x8 DW_TAG_formal_parameter 342 .byte 3 # DW_AT_name 343 .byte 0 # DW_AT_decl_file 344 .byte 2 # DW_AT_decl_line 345 .long 86 # DW_AT_type 346 .byte 0 # End Of Children Mark 347 .byte 6 # Abbrev [6] 0x56:0x4 DW_TAG_base_type 348 .byte 2 # DW_AT_name 349 .byte 5 # DW_AT_encoding 350 .byte 4 # DW_AT_byte_size 351 .byte 4 # Abbrev [4] 0x5a:0x12 DW_TAG_subprogram 352 .byte 4 # DW_AT_linkage_name 353 .byte 5 # DW_AT_name 354 .byte 0 # DW_AT_decl_file 355 .byte 8 # DW_AT_decl_line 356 .long 86 # DW_AT_type 357 # DW_AT_external 358 # DW_AT_inline 359 .byte 5 # Abbrev [5] 0x63:0x8 DW_TAG_formal_parameter 360 .byte 3 # DW_AT_name 361 .byte 0 # DW_AT_decl_file 362 .byte 8 # DW_AT_decl_line 363 .long 86 # DW_AT_type 364 .byte 0 # End Of Children Mark 365 .byte 7 # Abbrev [7] 0x6c:0x4a DW_TAG_subprogram 366 .byte 2 # DW_AT_low_pc 367 .long .Lfunc_end2-.Lfunc_begin2 # DW_AT_high_pc 368 .byte 1 # DW_AT_frame_base 369 .byte 86 370 .byte 6 # DW_AT_name 371 .byte 0 # DW_AT_decl_file 372 .byte 15 # DW_AT_decl_line 373 .long 86 # DW_AT_type 374 # DW_AT_external 375 .byte 8 # Abbrev [8] 0x7b:0xb DW_TAG_formal_parameter 376 .byte 2 # DW_AT_location 377 .byte 145 378 .byte 112 379 .byte 7 # DW_AT_name 380 .byte 0 # DW_AT_decl_file 381 .byte 15 # DW_AT_decl_line 382 .long 86 # DW_AT_type 383 .byte 8 # Abbrev [8] 0x86:0xb DW_TAG_formal_parameter 384 .byte 2 # DW_AT_location 385 .byte 145 386 .byte 104 387 .byte 8 # DW_AT_name 388 .byte 0 # DW_AT_decl_file 389 .byte 15 # DW_AT_decl_line 390 .long 182 # DW_AT_type 391 .byte 9 # Abbrev [9] 0x91:0x12 DW_TAG_inlined_subroutine 392 .long 68 # DW_AT_abstract_origin 393 .byte 0 # DW_AT_ranges 394 .byte 0 # DW_AT_call_file 395 .byte 16 # DW_AT_call_line 396 .byte 13 # DW_AT_call_column 397 .byte 3 # Abbrev [3] 0x9a:0x8 DW_TAG_formal_parameter 398 .byte 2 # DW_AT_location 399 .byte 145 400 .byte 120 401 .long 77 # DW_AT_abstract_origin 402 .byte 0 # End Of Children Mark 403 .byte 9 # Abbrev [9] 0xa3:0x12 DW_TAG_inlined_subroutine 404 .long 90 # DW_AT_abstract_origin 405 .byte 1 # DW_AT_ranges 406 .byte 0 # DW_AT_call_file 407 .byte 16 # DW_AT_call_line 408 .byte 29 # DW_AT_call_column 409 .byte 3 # Abbrev [3] 0xac:0x8 DW_TAG_formal_parameter 410 .byte 2 # DW_AT_location 411 .byte 145 412 .byte 124 413 .long 99 # DW_AT_abstract_origin 414 .byte 0 # End Of Children Mark 415 .byte 0 # End Of Children Mark 416 .byte 10 # Abbrev [10] 0xb6:0x5 DW_TAG_pointer_type 417 .long 187 # DW_AT_type 418 .byte 10 # Abbrev [10] 0xbb:0x5 DW_TAG_pointer_type 419 .long 192 # DW_AT_type 420 .byte 11 # Abbrev [11] 0xc0:0x5 DW_TAG_const_type 421 .long 197 # DW_AT_type 422 .byte 6 # Abbrev [6] 0xc5:0x4 DW_TAG_base_type 423 .byte 9 # DW_AT_name 424 .byte 6 # DW_AT_encoding 425 .byte 1 # DW_AT_byte_size 426 .byte 0 # End Of Children Mark 427.Ldebug_info_dwo_end0: 428 .section .debug_abbrev.dwo,"e",@progbits 429 .byte 1 # Abbreviation Code 430 .byte 17 # DW_TAG_compile_unit 431 .byte 1 # DW_CHILDREN_yes 432 .byte 37 # DW_AT_producer 433 .byte 37 # DW_FORM_strx1 434 .byte 19 # DW_AT_language 435 .byte 5 # DW_FORM_data2 436 .byte 3 # DW_AT_name 437 .byte 37 # DW_FORM_strx1 438 .byte 118 # DW_AT_dwo_name 439 .byte 37 # DW_FORM_strx1 440 .byte 0 # EOM(1) 441 .byte 0 # EOM(2) 442 .byte 2 # Abbreviation Code 443 .byte 46 # DW_TAG_subprogram 444 .byte 1 # DW_CHILDREN_yes 445 .byte 17 # DW_AT_low_pc 446 .byte 27 # DW_FORM_addrx 447 .byte 18 # DW_AT_high_pc 448 .byte 6 # DW_FORM_data4 449 .byte 64 # DW_AT_frame_base 450 .byte 24 # DW_FORM_exprloc 451 .byte 49 # DW_AT_abstract_origin 452 .byte 19 # DW_FORM_ref4 453 .byte 0 # EOM(1) 454 .byte 0 # EOM(2) 455 .byte 3 # Abbreviation Code 456 .byte 5 # DW_TAG_formal_parameter 457 .byte 0 # DW_CHILDREN_no 458 .byte 2 # DW_AT_location 459 .byte 24 # DW_FORM_exprloc 460 .byte 49 # DW_AT_abstract_origin 461 .byte 19 # DW_FORM_ref4 462 .byte 0 # EOM(1) 463 .byte 0 # EOM(2) 464 .byte 4 # Abbreviation Code 465 .byte 46 # DW_TAG_subprogram 466 .byte 1 # DW_CHILDREN_yes 467 .byte 110 # DW_AT_linkage_name 468 .byte 37 # DW_FORM_strx1 469 .byte 3 # DW_AT_name 470 .byte 37 # DW_FORM_strx1 471 .byte 58 # DW_AT_decl_file 472 .byte 11 # DW_FORM_data1 473 .byte 59 # DW_AT_decl_line 474 .byte 11 # DW_FORM_data1 475 .byte 73 # DW_AT_type 476 .byte 19 # DW_FORM_ref4 477 .byte 63 # DW_AT_external 478 .byte 25 # DW_FORM_flag_present 479 .byte 32 # DW_AT_inline 480 .byte 33 # DW_FORM_implicit_const 481 .byte 1 482 .byte 0 # EOM(1) 483 .byte 0 # EOM(2) 484 .byte 5 # Abbreviation Code 485 .byte 5 # DW_TAG_formal_parameter 486 .byte 0 # DW_CHILDREN_no 487 .byte 3 # DW_AT_name 488 .byte 37 # DW_FORM_strx1 489 .byte 58 # DW_AT_decl_file 490 .byte 11 # DW_FORM_data1 491 .byte 59 # DW_AT_decl_line 492 .byte 11 # DW_FORM_data1 493 .byte 73 # DW_AT_type 494 .byte 19 # DW_FORM_ref4 495 .byte 0 # EOM(1) 496 .byte 0 # EOM(2) 497 .byte 6 # Abbreviation Code 498 .byte 36 # DW_TAG_base_type 499 .byte 0 # DW_CHILDREN_no 500 .byte 3 # DW_AT_name 501 .byte 37 # DW_FORM_strx1 502 .byte 62 # DW_AT_encoding 503 .byte 11 # DW_FORM_data1 504 .byte 11 # DW_AT_byte_size 505 .byte 11 # DW_FORM_data1 506 .byte 0 # EOM(1) 507 .byte 0 # EOM(2) 508 .byte 7 # Abbreviation Code 509 .byte 46 # DW_TAG_subprogram 510 .byte 1 # DW_CHILDREN_yes 511 .byte 17 # DW_AT_low_pc 512 .byte 27 # DW_FORM_addrx 513 .byte 18 # DW_AT_high_pc 514 .byte 6 # DW_FORM_data4 515 .byte 64 # DW_AT_frame_base 516 .byte 24 # DW_FORM_exprloc 517 .byte 3 # DW_AT_name 518 .byte 37 # DW_FORM_strx1 519 .byte 58 # DW_AT_decl_file 520 .byte 11 # DW_FORM_data1 521 .byte 59 # DW_AT_decl_line 522 .byte 11 # DW_FORM_data1 523 .byte 73 # DW_AT_type 524 .byte 19 # DW_FORM_ref4 525 .byte 63 # DW_AT_external 526 .byte 25 # DW_FORM_flag_present 527 .byte 0 # EOM(1) 528 .byte 0 # EOM(2) 529 .byte 8 # Abbreviation Code 530 .byte 5 # DW_TAG_formal_parameter 531 .byte 0 # DW_CHILDREN_no 532 .byte 2 # DW_AT_location 533 .byte 24 # DW_FORM_exprloc 534 .byte 3 # DW_AT_name 535 .byte 37 # DW_FORM_strx1 536 .byte 58 # DW_AT_decl_file 537 .byte 11 # DW_FORM_data1 538 .byte 59 # DW_AT_decl_line 539 .byte 11 # DW_FORM_data1 540 .byte 73 # DW_AT_type 541 .byte 19 # DW_FORM_ref4 542 .byte 0 # EOM(1) 543 .byte 0 # EOM(2) 544 .byte 9 # Abbreviation Code 545 .byte 29 # DW_TAG_inlined_subroutine 546 .byte 1 # DW_CHILDREN_yes 547 .byte 49 # DW_AT_abstract_origin 548 .byte 19 # DW_FORM_ref4 549 .byte 85 # DW_AT_ranges 550 .byte 35 # DW_FORM_rnglistx 551 .byte 88 # DW_AT_call_file 552 .byte 11 # DW_FORM_data1 553 .byte 89 # DW_AT_call_line 554 .byte 11 # DW_FORM_data1 555 .byte 87 # DW_AT_call_column 556 .byte 11 # DW_FORM_data1 557 .byte 0 # EOM(1) 558 .byte 0 # EOM(2) 559 .byte 10 # Abbreviation Code 560 .byte 15 # DW_TAG_pointer_type 561 .byte 0 # DW_CHILDREN_no 562 .byte 73 # DW_AT_type 563 .byte 19 # DW_FORM_ref4 564 .byte 0 # EOM(1) 565 .byte 0 # EOM(2) 566 .byte 11 # Abbreviation Code 567 .byte 38 # DW_TAG_const_type 568 .byte 0 # DW_CHILDREN_no 569 .byte 73 # DW_AT_type 570 .byte 19 # DW_FORM_ref4 571 .byte 0 # EOM(1) 572 .byte 0 # EOM(2) 573 .byte 0 # EOM(3) 574 .section .debug_rnglists.dwo,"e",@progbits 575 .long .Ldebug_list_header_end1-.Ldebug_list_header_start1 # Length 576.Ldebug_list_header_start1: 577 .short 5 # Version 578 .byte 8 # Address size 579 .byte 0 # Segment selector size 580 .long 2 # Offset entry count 581.Lrnglists_dwo_table_base0: 582 .long .Ldebug_ranges0-.Lrnglists_dwo_table_base0 583 .long .Ldebug_ranges1-.Lrnglists_dwo_table_base0 584.Ldebug_ranges0: 585 .byte 1 # DW_RLE_base_addressx 586 .byte 2 # base address index 587 .byte 4 # DW_RLE_offset_pair 588 .uleb128 0 # starting offset Manually modified 589 .uleb128 .Ltmp15-.Lfunc_begin2 # ending offset 590 .byte 0 # DW_RLE_end_of_list 591.Ldebug_ranges1: 592 .byte 1 # DW_RLE_base_addressx 593 .byte 2 # base address index 594 .byte 4 # DW_RLE_offset_pair 595 .uleb128 0 # starting offset Manually modified 596 .uleb128 .Ltmp19-.Lfunc_begin2 # ending offset 597 .byte 0 # DW_RLE_end_of_list 598.Ldebug_list_header_end1: 599 .section .debug_addr,"",@progbits 600 .long .Ldebug_addr_end0-.Ldebug_addr_start0 # Length of contribution 601.Ldebug_addr_start0: 602 .short 5 # DWARF version number 603 .byte 8 # Address size 604 .byte 0 # Segment selector size 605.Laddr_table_base0: 606 .quad .Lfunc_begin0 607 .quad .Lfunc_begin1 608 .quad 0 # Manually modified 609.Ldebug_addr_end0: 610 .section .debug_gnu_pubnames,"",@progbits 611 .long .LpubNames_end0-.LpubNames_start0 # Length of Public Names Info 612.LpubNames_start0: 613 .short 2 # DWARF Version 614 .long .Lcu_begin0 # Offset of Compilation Unit Info 615 .long 48 # Compilation Unit Length 616 .long 68 # DIE offset 617 .byte 48 # Attributes: FUNCTION, EXTERNAL 618 .asciz "doStuff" # External Name 619 .long 90 # DIE offset 620 .byte 48 # Attributes: FUNCTION, EXTERNAL 621 .asciz "doStuffSame" # External Name 622 .long 108 # DIE offset 623 .byte 48 # Attributes: FUNCTION, EXTERNAL 624 .asciz "main" # External Name 625 .long 0 # End Mark 626.LpubNames_end0: 627 .section .debug_gnu_pubtypes,"",@progbits 628 .long .LpubTypes_end0-.LpubTypes_start0 # Length of Public Types Info 629.LpubTypes_start0: 630 .short 2 # DWARF Version 631 .long .Lcu_begin0 # Offset of Compilation Unit Info 632 .long 48 # Compilation Unit Length 633 .long 86 # DIE offset 634 .byte 144 # Attributes: TYPE, STATIC 635 .asciz "int" # External Name 636 .long 197 # DIE offset 637 .byte 144 # Attributes: TYPE, STATIC 638 .asciz "char" # External Name 639 .long 0 # End Mark 640.LpubTypes_end0: 641 .ident "clang version 18.0.0 (git@github.com:llvm/llvm-project.git 63dbe7e808d07bdf25bad85301980bc323b0cd64)" 642 .section ".note.GNU-stack","",@progbits 643 .addrsig 644 .section .debug_line,"",@progbits 645.Lline_table_start0: 646