1# clang++ main.cpp -g2 -gsplit-dwarf=split -gdwarf-4 -fdebug-types-section 2# struct Foo { 3# char *c1; 4# char *c2; 5# char *c3; 6# }; 7# 8# struct Foo2 { 9# char *c1; 10# char *c2; 11# }; 12# 13# int main(int argc, char *argv[]) { 14# Foo f; 15# f.c1 = argv[argc]; 16# f.c2 = argv[argc + 1]; 17# f.c3 = argv[argc + 2]; 18# Foo2 f2; 19# f.c1 = argv[argc + 3]; 20# f.c2 = argv[argc + 4]; 21# return 0; 22# } 23 24 .text 25 .file "main.cpp" 26 .globl main # -- Begin function main 27 .p2align 4, 0x90 28 .type main,@function 29main: # @main 30.Lfunc_begin0: 31 .file 1 "." "main.cpp" 32 .loc 1 12 0 # main.cpp:12:0 33 .cfi_startproc 34# %bb.0: # %entry 35 pushq %rbp 36 .cfi_def_cfa_offset 16 37 .cfi_offset %rbp, -16 38 movq %rsp, %rbp 39 .cfi_def_cfa_register %rbp 40 movl $0, -4(%rbp) 41 movl %edi, -8(%rbp) 42 movq %rsi, -16(%rbp) 43.Ltmp0: 44 .loc 1 14 10 prologue_end # main.cpp:14:10 45 movq -16(%rbp), %rax 46 movslq -8(%rbp), %rcx 47 movq (%rax,%rcx,8), %rax 48 .loc 1 14 8 is_stmt 0 # main.cpp:14:8 49 movq %rax, -40(%rbp) 50 .loc 1 15 10 is_stmt 1 # main.cpp:15:10 51 movq -16(%rbp), %rax 52 .loc 1 15 15 is_stmt 0 # main.cpp:15:15 53 movl -8(%rbp), %ecx 54 .loc 1 15 20 # main.cpp:15:20 55 addl $1, %ecx 56 .loc 1 15 10 # main.cpp:15:10 57 movslq %ecx, %rcx 58 movq (%rax,%rcx,8), %rax 59 .loc 1 15 8 # main.cpp:15:8 60 movq %rax, -32(%rbp) 61 .loc 1 16 10 is_stmt 1 # main.cpp:16:10 62 movq -16(%rbp), %rax 63 .loc 1 16 15 is_stmt 0 # main.cpp:16:15 64 movl -8(%rbp), %ecx 65 .loc 1 16 20 # main.cpp:16:20 66 addl $2, %ecx 67 .loc 1 16 10 # main.cpp:16:10 68 movslq %ecx, %rcx 69 movq (%rax,%rcx,8), %rax 70 .loc 1 16 8 # main.cpp:16:8 71 movq %rax, -24(%rbp) 72 .loc 1 18 10 is_stmt 1 # main.cpp:18:10 73 movq -16(%rbp), %rax 74 .loc 1 18 15 is_stmt 0 # main.cpp:18:15 75 movl -8(%rbp), %ecx 76 .loc 1 18 20 # main.cpp:18:20 77 addl $3, %ecx 78 .loc 1 18 10 # main.cpp:18:10 79 movslq %ecx, %rcx 80 movq (%rax,%rcx,8), %rax 81 .loc 1 18 8 # main.cpp:18:8 82 movq %rax, -40(%rbp) 83 .loc 1 19 10 is_stmt 1 # main.cpp:19:10 84 movq -16(%rbp), %rax 85 .loc 1 19 15 is_stmt 0 # main.cpp:19:15 86 movl -8(%rbp), %ecx 87 .loc 1 19 20 # main.cpp:19:20 88 addl $4, %ecx 89 .loc 1 19 10 # main.cpp:19:10 90 movslq %ecx, %rcx 91 movq (%rax,%rcx,8), %rax 92 .loc 1 19 8 # main.cpp:19:8 93 movq %rax, -32(%rbp) 94 .loc 1 20 3 is_stmt 1 # main.cpp:20:3 95 xorl %eax, %eax 96 popq %rbp 97 .cfi_def_cfa %rsp, 8 98 retq 99.Ltmp1: 100.Lfunc_end0: 101 .size main, .Lfunc_end0-main 102 .cfi_endproc 103 # -- End function 104 .section .debug_types.dwo,"e",@progbits 105 .long .Ldebug_info_dwo_end0-.Ldebug_info_dwo_start0 # Length of Unit 106.Ldebug_info_dwo_start0: 107 .short 4 # DWARF version number 108 .long 0 # Offset Into Abbrev. Section 109 .byte 8 # Address Size (in bytes) 110 .quad 7448148824980338162 # Type Signature 111 .long 30 # Type DIE Offset 112 .byte 1 # Abbrev [1] 0x17:0x33 DW_TAG_type_unit 113 .short 33 # DW_AT_language 114 .long 0 # DW_AT_stmt_list 115 .byte 2 # Abbrev [2] 0x1e:0x22 DW_TAG_structure_type 116 .byte 5 # DW_AT_calling_convention 117 .byte 9 # DW_AT_name 118 .byte 24 # DW_AT_byte_size 119 .byte 1 # DW_AT_decl_file 120 .byte 1 # DW_AT_decl_line 121 .byte 3 # Abbrev [3] 0x24:0x9 DW_TAG_member 122 .byte 6 # DW_AT_name 123 .long 64 # DW_AT_type 124 .byte 1 # DW_AT_decl_file 125 .byte 2 # DW_AT_decl_line 126 .byte 0 # DW_AT_data_member_location 127 .byte 3 # Abbrev [3] 0x2d:0x9 DW_TAG_member 128 .byte 7 # DW_AT_name 129 .long 64 # DW_AT_type 130 .byte 1 # DW_AT_decl_file 131 .byte 3 # DW_AT_decl_line 132 .byte 8 # DW_AT_data_member_location 133 .byte 3 # Abbrev [3] 0x36:0x9 DW_TAG_member 134 .byte 8 # DW_AT_name 135 .long 64 # DW_AT_type 136 .byte 1 # DW_AT_decl_file 137 .byte 4 # DW_AT_decl_line 138 .byte 16 # DW_AT_data_member_location 139 .byte 0 # End Of Children Mark 140 .byte 4 # Abbrev [4] 0x40:0x5 DW_TAG_pointer_type 141 .long 69 # DW_AT_type 142 .byte 5 # Abbrev [5] 0x45:0x4 DW_TAG_base_type 143 .byte 4 # DW_AT_name 144 .byte 6 # DW_AT_encoding 145 .byte 1 # DW_AT_byte_size 146 .byte 0 # End Of Children Mark 147.Ldebug_info_dwo_end0: 148 .long .Ldebug_info_dwo_end1-.Ldebug_info_dwo_start1 # Length of Unit 149.Ldebug_info_dwo_start1: 150 .short 4 # DWARF version number 151 .long 0 # Offset Into Abbrev. Section 152 .byte 8 # Address Size (in bytes) 153 .quad 5322170643381124694 # Type Signature 154 .long 30 # Type DIE Offset 155 .byte 1 # Abbrev [1] 0x17:0x2a DW_TAG_type_unit 156 .short 33 # DW_AT_language 157 .long 0 # DW_AT_stmt_list 158 .byte 2 # Abbrev [2] 0x1e:0x19 DW_TAG_structure_type 159 .byte 5 # DW_AT_calling_convention 160 .byte 11 # DW_AT_name 161 .byte 16 # DW_AT_byte_size 162 .byte 1 # DW_AT_decl_file 163 .byte 7 # DW_AT_decl_line 164 .byte 3 # Abbrev [3] 0x24:0x9 DW_TAG_member 165 .byte 6 # DW_AT_name 166 .long 55 # DW_AT_type 167 .byte 1 # DW_AT_decl_file 168 .byte 8 # DW_AT_decl_line 169 .byte 0 # DW_AT_data_member_location 170 .byte 3 # Abbrev [3] 0x2d:0x9 DW_TAG_member 171 .byte 7 # DW_AT_name 172 .long 55 # DW_AT_type 173 .byte 1 # DW_AT_decl_file 174 .byte 9 # DW_AT_decl_line 175 .byte 8 # DW_AT_data_member_location 176 .byte 0 # End Of Children Mark 177 .byte 4 # Abbrev [4] 0x37:0x5 DW_TAG_pointer_type 178 .long 60 # DW_AT_type 179 .byte 5 # Abbrev [5] 0x3c:0x4 DW_TAG_base_type 180 .byte 4 # DW_AT_name 181 .byte 6 # DW_AT_encoding 182 .byte 1 # DW_AT_byte_size 183 .byte 0 # End Of Children Mark 184.Ldebug_info_dwo_end1: 185 .section .debug_abbrev,"",@progbits 186 .byte 1 # Abbreviation Code 187 .byte 17 # DW_TAG_compile_unit 188 .byte 0 # DW_CHILDREN_no 189 .byte 16 # DW_AT_stmt_list 190 .byte 23 # DW_FORM_sec_offset 191 .byte 27 # DW_AT_comp_dir 192 .byte 14 # DW_FORM_strp 193 .ascii "\264B" # DW_AT_GNU_pubnames 194 .byte 25 # DW_FORM_flag_present 195 .ascii "\260B" # DW_AT_GNU_dwo_name 196 .byte 14 # DW_FORM_strp 197 .ascii "\261B" # DW_AT_GNU_dwo_id 198 .byte 7 # DW_FORM_data8 199 .byte 17 # DW_AT_low_pc 200 .byte 1 # DW_FORM_addr 201 .byte 18 # DW_AT_high_pc 202 .byte 6 # DW_FORM_data4 203 .ascii "\263B" # DW_AT_GNU_addr_base 204 .byte 23 # DW_FORM_sec_offset 205 .byte 0 # EOM(1) 206 .byte 0 # EOM(2) 207 .byte 0 # EOM(3) 208 .section .debug_info,"",@progbits 209.Lcu_begin0: 210 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit 211.Ldebug_info_start0: 212 .short 4 # DWARF version number 213 .long .debug_abbrev # Offset Into Abbrev. Section 214 .byte 8 # Address Size (in bytes) 215 .byte 1 # Abbrev [1] 0xb:0x25 DW_TAG_compile_unit 216 .long .Lline_table_start0 # DW_AT_stmt_list 217 .long .Lskel_string0 # DW_AT_comp_dir 218 # DW_AT_GNU_pubnames 219 .long .Lskel_string1 # DW_AT_GNU_dwo_name 220 .quad 4780348136649610820 # DW_AT_GNU_dwo_id 221 .quad .Lfunc_begin0 # DW_AT_low_pc 222 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc 223 .long .Laddr_table_base0 # DW_AT_GNU_addr_base 224.Ldebug_info_end0: 225 .section .debug_str,"MS",@progbits,1 226.Lskel_string0: 227 .asciz "." # string offset=0 228.Lskel_string1: 229 .asciz "main.dwo" # string offset=38 230 .section .debug_str.dwo,"eMS",@progbits,1 231.Linfo_string0: 232 .asciz "main" # string offset=0 233.Linfo_string1: 234 .asciz "int" # string offset=5 235.Linfo_string2: 236 .asciz "argc" # string offset=9 237.Linfo_string3: 238 .asciz "argv" # string offset=14 239.Linfo_string4: 240 .asciz "char" # string offset=19 241.Linfo_string5: 242 .asciz "f" # string offset=24 243.Linfo_string6: 244 .asciz "c1" # string offset=26 245.Linfo_string7: 246 .asciz "c2" # string offset=29 247.Linfo_string8: 248 .asciz "c3" # string offset=32 249.Linfo_string9: 250 .asciz "Foo" # string offset=35 251.Linfo_string10: 252 .asciz "f2" # string offset=39 253.Linfo_string11: 254 .asciz "Foo2" # string offset=42 255.Linfo_string12: 256 .asciz "clang version 15.0.0" # string offset=47 257.Linfo_string13: 258 .asciz "main.cpp" # string offset=68 259.Linfo_string14: 260 .asciz "main.dwo" # string offset=77 261 .section .debug_str_offsets.dwo,"e",@progbits 262 .long 0 263 .long 5 264 .long 9 265 .long 14 266 .long 19 267 .long 24 268 .long 26 269 .long 29 270 .long 32 271 .long 35 272 .long 39 273 .long 42 274 .long 47 275 .long 68 276 .long 77 277 .section .debug_info.dwo,"e",@progbits 278 .long .Ldebug_info_dwo_end2-.Ldebug_info_dwo_start2 # Length of Unit 279.Ldebug_info_dwo_start2: 280 .short 4 # DWARF version number 281 .long 0 # Offset Into Abbrev. Section 282 .byte 8 # Address Size (in bytes) 283 .byte 6 # Abbrev [6] 0xb:0x6f DW_TAG_compile_unit 284 .byte 12 # DW_AT_producer 285 .short 33 # DW_AT_language 286 .byte 13 # DW_AT_name 287 .byte 14 # DW_AT_GNU_dwo_name 288 .quad 4780348136649610820 # DW_AT_GNU_dwo_id 289 .byte 7 # Abbrev [7] 0x19:0x3c DW_TAG_subprogram 290 .byte 0 # DW_AT_low_pc 291 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc 292 .byte 1 # DW_AT_frame_base 293 .byte 86 294 .byte 0 # DW_AT_name 295 .byte 1 # DW_AT_decl_file 296 .byte 12 # DW_AT_decl_line 297 .long 85 # DW_AT_type 298 # DW_AT_external 299 .byte 8 # Abbrev [8] 0x28:0xb DW_TAG_formal_parameter 300 .byte 2 # DW_AT_location 301 .byte 145 302 .byte 120 303 .byte 2 # DW_AT_name 304 .byte 1 # DW_AT_decl_file 305 .byte 12 # DW_AT_decl_line 306 .long 85 # DW_AT_type 307 .byte 8 # Abbrev [8] 0x33:0xb DW_TAG_formal_parameter 308 .byte 2 # DW_AT_location 309 .byte 145 310 .byte 112 311 .byte 3 # DW_AT_name 312 .byte 1 # DW_AT_decl_file 313 .byte 12 # DW_AT_decl_line 314 .long 89 # DW_AT_type 315 .byte 9 # Abbrev [9] 0x3e:0xb DW_TAG_variable 316 .byte 2 # DW_AT_location 317 .byte 145 318 .byte 88 319 .byte 5 # DW_AT_name 320 .byte 1 # DW_AT_decl_file 321 .byte 13 # DW_AT_decl_line 322 .long 103 # DW_AT_type 323 .byte 9 # Abbrev [9] 0x49:0xb DW_TAG_variable 324 .byte 2 # DW_AT_location 325 .byte 145 326 .byte 72 327 .byte 10 # DW_AT_name 328 .byte 1 # DW_AT_decl_file 329 .byte 17 # DW_AT_decl_line 330 .long 112 # DW_AT_type 331 .byte 0 # End Of Children Mark 332 .byte 5 # Abbrev [5] 0x55:0x4 DW_TAG_base_type 333 .byte 1 # DW_AT_name 334 .byte 5 # DW_AT_encoding 335 .byte 4 # DW_AT_byte_size 336 .byte 4 # Abbrev [4] 0x59:0x5 DW_TAG_pointer_type 337 .long 94 # DW_AT_type 338 .byte 4 # Abbrev [4] 0x5e:0x5 DW_TAG_pointer_type 339 .long 99 # DW_AT_type 340 .byte 5 # Abbrev [5] 0x63:0x4 DW_TAG_base_type 341 .byte 4 # DW_AT_name 342 .byte 6 # DW_AT_encoding 343 .byte 1 # DW_AT_byte_size 344 .byte 10 # Abbrev [10] 0x67:0x9 DW_TAG_structure_type 345 # DW_AT_declaration 346 .quad 7448148824980338162 # DW_AT_signature 347 .byte 10 # Abbrev [10] 0x70:0x9 DW_TAG_structure_type 348 # DW_AT_declaration 349 .quad 5322170643381124694 # DW_AT_signature 350 .byte 0 # End Of Children Mark 351.Ldebug_info_dwo_end2: 352 .section .debug_abbrev.dwo,"e",@progbits 353 .byte 1 # Abbreviation Code 354 .byte 65 # DW_TAG_type_unit 355 .byte 1 # DW_CHILDREN_yes 356 .byte 19 # DW_AT_language 357 .byte 5 # DW_FORM_data2 358 .byte 16 # DW_AT_stmt_list 359 .byte 23 # DW_FORM_sec_offset 360 .byte 0 # EOM(1) 361 .byte 0 # EOM(2) 362 .byte 2 # Abbreviation Code 363 .byte 19 # DW_TAG_structure_type 364 .byte 1 # DW_CHILDREN_yes 365 .byte 54 # DW_AT_calling_convention 366 .byte 11 # DW_FORM_data1 367 .byte 3 # DW_AT_name 368 .ascii "\202>" # DW_FORM_GNU_str_index 369 .byte 11 # DW_AT_byte_size 370 .byte 11 # DW_FORM_data1 371 .byte 58 # DW_AT_decl_file 372 .byte 11 # DW_FORM_data1 373 .byte 59 # DW_AT_decl_line 374 .byte 11 # DW_FORM_data1 375 .byte 0 # EOM(1) 376 .byte 0 # EOM(2) 377 .byte 3 # Abbreviation Code 378 .byte 13 # DW_TAG_member 379 .byte 0 # DW_CHILDREN_no 380 .byte 3 # DW_AT_name 381 .ascii "\202>" # DW_FORM_GNU_str_index 382 .byte 73 # DW_AT_type 383 .byte 19 # DW_FORM_ref4 384 .byte 58 # DW_AT_decl_file 385 .byte 11 # DW_FORM_data1 386 .byte 59 # DW_AT_decl_line 387 .byte 11 # DW_FORM_data1 388 .byte 56 # DW_AT_data_member_location 389 .byte 11 # DW_FORM_data1 390 .byte 0 # EOM(1) 391 .byte 0 # EOM(2) 392 .byte 4 # Abbreviation Code 393 .byte 15 # DW_TAG_pointer_type 394 .byte 0 # DW_CHILDREN_no 395 .byte 73 # DW_AT_type 396 .byte 19 # DW_FORM_ref4 397 .byte 0 # EOM(1) 398 .byte 0 # EOM(2) 399 .byte 5 # Abbreviation Code 400 .byte 36 # DW_TAG_base_type 401 .byte 0 # DW_CHILDREN_no 402 .byte 3 # DW_AT_name 403 .ascii "\202>" # DW_FORM_GNU_str_index 404 .byte 62 # DW_AT_encoding 405 .byte 11 # DW_FORM_data1 406 .byte 11 # DW_AT_byte_size 407 .byte 11 # DW_FORM_data1 408 .byte 0 # EOM(1) 409 .byte 0 # EOM(2) 410 .byte 6 # Abbreviation Code 411 .byte 17 # DW_TAG_compile_unit 412 .byte 1 # DW_CHILDREN_yes 413 .byte 37 # DW_AT_producer 414 .ascii "\202>" # DW_FORM_GNU_str_index 415 .byte 19 # DW_AT_language 416 .byte 5 # DW_FORM_data2 417 .byte 3 # DW_AT_name 418 .ascii "\202>" # DW_FORM_GNU_str_index 419 .ascii "\260B" # DW_AT_GNU_dwo_name 420 .ascii "\202>" # DW_FORM_GNU_str_index 421 .ascii "\261B" # DW_AT_GNU_dwo_id 422 .byte 7 # DW_FORM_data8 423 .byte 0 # EOM(1) 424 .byte 0 # EOM(2) 425 .byte 7 # Abbreviation Code 426 .byte 46 # DW_TAG_subprogram 427 .byte 1 # DW_CHILDREN_yes 428 .byte 17 # DW_AT_low_pc 429 .ascii "\201>" # DW_FORM_GNU_addr_index 430 .byte 18 # DW_AT_high_pc 431 .byte 6 # DW_FORM_data4 432 .byte 64 # DW_AT_frame_base 433 .byte 24 # DW_FORM_exprloc 434 .byte 3 # DW_AT_name 435 .ascii "\202>" # DW_FORM_GNU_str_index 436 .byte 58 # DW_AT_decl_file 437 .byte 11 # DW_FORM_data1 438 .byte 59 # DW_AT_decl_line 439 .byte 11 # DW_FORM_data1 440 .byte 73 # DW_AT_type 441 .byte 19 # DW_FORM_ref4 442 .byte 63 # DW_AT_external 443 .byte 25 # DW_FORM_flag_present 444 .byte 0 # EOM(1) 445 .byte 0 # EOM(2) 446 .byte 8 # Abbreviation Code 447 .byte 5 # DW_TAG_formal_parameter 448 .byte 0 # DW_CHILDREN_no 449 .byte 2 # DW_AT_location 450 .byte 24 # DW_FORM_exprloc 451 .byte 3 # DW_AT_name 452 .ascii "\202>" # DW_FORM_GNU_str_index 453 .byte 58 # DW_AT_decl_file 454 .byte 11 # DW_FORM_data1 455 .byte 59 # DW_AT_decl_line 456 .byte 11 # DW_FORM_data1 457 .byte 73 # DW_AT_type 458 .byte 19 # DW_FORM_ref4 459 .byte 0 # EOM(1) 460 .byte 0 # EOM(2) 461 .byte 9 # Abbreviation Code 462 .byte 52 # DW_TAG_variable 463 .byte 0 # DW_CHILDREN_no 464 .byte 2 # DW_AT_location 465 .byte 24 # DW_FORM_exprloc 466 .byte 3 # DW_AT_name 467 .ascii "\202>" # DW_FORM_GNU_str_index 468 .byte 58 # DW_AT_decl_file 469 .byte 11 # DW_FORM_data1 470 .byte 59 # DW_AT_decl_line 471 .byte 11 # DW_FORM_data1 472 .byte 73 # DW_AT_type 473 .byte 19 # DW_FORM_ref4 474 .byte 0 # EOM(1) 475 .byte 0 # EOM(2) 476 .byte 10 # Abbreviation Code 477 .byte 19 # DW_TAG_structure_type 478 .byte 0 # DW_CHILDREN_no 479 .byte 60 # DW_AT_declaration 480 .byte 25 # DW_FORM_flag_present 481 .byte 105 # DW_AT_signature 482 .byte 32 # DW_FORM_ref_sig8 483 .byte 0 # EOM(1) 484 .byte 0 # EOM(2) 485 .byte 0 # EOM(3) 486 .section .debug_line.dwo,"e",@progbits 487.Ltmp2: 488 .long .Ldebug_line_end0-.Ldebug_line_start0 # unit length 489.Ldebug_line_start0: 490 .short 4 491 .long .Lprologue_end0-.Lprologue_start0 492.Lprologue_start0: 493 .byte 1 494 .byte 1 495 .byte 1 496 .byte -5 497 .byte 14 498 .byte 1 499 .byte 0 500 .ascii "main.cpp" 501 .byte 0 502 .byte 0 503 .byte 0 504 .byte 0 505 .byte 0 506.Lprologue_end0: 507.Ldebug_line_end0: 508 .section .debug_addr,"",@progbits 509.Laddr_table_base0: 510 .quad .Lfunc_begin0 511 .section .debug_gnu_pubnames,"",@progbits 512 .long .LpubNames_end0-.LpubNames_start0 # Length of Public Names Info 513.LpubNames_start0: 514 .short 2 # DWARF Version 515 .long .Lcu_begin0 # Offset of Compilation Unit Info 516 .long 48 # Compilation Unit Length 517 .long 25 # DIE offset 518 .byte 48 # Attributes: FUNCTION, EXTERNAL 519 .asciz "main" # External Name 520 .long 0 # End Mark 521.LpubNames_end0: 522 .section .debug_gnu_pubtypes,"",@progbits 523 .long .LpubTypes_end0-.LpubTypes_start0 # Length of Public Types Info 524.LpubTypes_start0: 525 .short 2 # DWARF Version 526 .long .Lcu_begin0 # Offset of Compilation Unit Info 527 .long 48 # Compilation Unit Length 528 .long 103 # DIE offset 529 .byte 16 # Attributes: TYPE, EXTERNAL 530 .asciz "Foo" # External Name 531 .long 112 # DIE offset 532 .byte 16 # Attributes: TYPE, EXTERNAL 533 .asciz "Foo2" # External Name 534 .long 85 # DIE offset 535 .byte 144 # Attributes: TYPE, STATIC 536 .asciz "int" # External Name 537 .long 99 # DIE offset 538 .byte 144 # Attributes: TYPE, STATIC 539 .asciz "char" # External Name 540 .long 0 # End Mark 541.LpubTypes_end0: 542 .ident "clang version 15.0.0" 543 .section ".note.GNU-stack","",@progbits 544 .addrsig 545 .section .debug_line,"",@progbits 546.Lline_table_start0: 547