1# clang++ main.cpp -O1 -g2 -gdwarf-4 -emit-llvm -c -o mainLL.o 2# clang++ helper1.cpp -O1 -g2 -gdwarf-4 -emit-llvm -c -o helper1LL.o 3# llvm-link mainLL.o helper1LL.o -S -o linked.ll 4# clang++ -O1 linked.ll -g2 -gdwarf-4 -S -o combinedTest.s 5 6# main.cpp 7# struct Foo { 8# int x; 9# int y; 10# }; 11# inline __attribute__((always_inline)) 12# static int helper(Foo &f) { 13# return f.x + 3; 14# } 15# int main(int argc, char *argv[]) { 16# Foo foo; 17# foo.x = argc; 18# foo.y = 3; 19# return helper(foo) + foo.x + foo.y; 20# } 21# helper1.cpp 22# struct Foo2 { 23# int x; 24# int y; 25# }; 26# inline __attribute__((always_inline)) 27# static int helper(Foo2 &f) { 28# return f.x + 3; 29# } 30# int foo2(int i) { 31# Foo2 foo; 32# foo.x = i; 33# foo.y = 3; 34# return helper(foo); 35# } 36 37 .text 38 .file "llvm-link" 39 .globl main # -- Begin function main 40 .p2align 4, 0x90 41 .type main,@function 42main: # @main 43.Lfunc_begin0: 44 .cfi_startproc 45# %bb.0: # %entry 46 #DEBUG_VALUE: main:argc <- $edi 47 #DEBUG_VALUE: main:argv <- $rsi 48 #DEBUG_VALUE: main:foo <- [DW_OP_LLVM_fragment 0 32] $edi 49 # kill: def $edi killed $edi def $rdi 50 #DEBUG_VALUE: main:foo <- [DW_OP_LLVM_fragment 32 32] 3 51 .file 1 "/dwarf4CrossCULocList" "main.cpp" 52 .loc 1 13 30 prologue_end # main.cpp:13:30 53 leal 6(,%rdi,2), %eax 54 .loc 1 13 3 is_stmt 0 # main.cpp:13:3 55 retq 56.Ltmp0: 57.Lfunc_end0: 58 .size main, .Lfunc_end0-main 59 .cfi_endproc 60 # -- End function 61 .globl _Z4foo2i # -- Begin function _Z4foo2i 62 .p2align 4, 0x90 63 .type _Z4foo2i,@function 64_Z4foo2i: # @_Z4foo2i 65.Lfunc_begin1: 66 .cfi_startproc 67# %bb.0: # %entry 68 #DEBUG_VALUE: foo2:i <- $edi 69 #DEBUG_VALUE: foo2:foo <- [DW_OP_LLVM_fragment 0 32] $edi 70 # kill: def $edi killed $edi def $rdi 71 #DEBUG_VALUE: foo2:foo <- [DW_OP_LLVM_fragment 32 32] 3 72 .file 2 "/dwarf4CrossCULocList" "helper1.cpp" 73 .loc 2 7 14 prologue_end is_stmt 1 # helper1.cpp:7:14 74 leal 3(%rdi), %eax 75.Ltmp1: 76 .loc 2 13 3 # helper1.cpp:13:3 77 retq 78.Ltmp2: 79.Lfunc_end1: 80 .size _Z4foo2i, .Lfunc_end1-_Z4foo2i 81 .cfi_endproc 82 # -- End function 83 .section .debug_loc,"",@progbits 84.Ldebug_loc0: 85 .quad .Lfunc_begin0-.Lfunc_begin0 86 .quad .Lfunc_end0-.Lfunc_begin0 87 .short 7 # Loc expr size 88 .byte 85 # super-register DW_OP_reg5 89 .byte 147 # DW_OP_piece 90 .byte 4 # 4 91 .byte 51 # DW_OP_lit3 92 .byte 159 # DW_OP_stack_value 93 .byte 147 # DW_OP_piece 94 .byte 4 # 4 95 .quad 0 96 .quad 0 97.Ldebug_loc1: 98 .quad .Lfunc_begin1-.Lfunc_begin1 99 .quad .Lfunc_end1-.Lfunc_begin1 100 .short 7 # Loc expr size 101 .byte 85 # super-register DW_OP_reg5 102 .byte 147 # DW_OP_piece 103 .byte 4 # 4 104 .byte 51 # DW_OP_lit3 105 .byte 159 # DW_OP_stack_value 106 .byte 147 # DW_OP_piece 107 .byte 4 # 4 108 .quad 0 109 .quad 0 110 .section .debug_abbrev,"",@progbits 111 .byte 1 # Abbreviation Code 112 .byte 17 # DW_TAG_compile_unit 113 .byte 1 # DW_CHILDREN_yes 114 .byte 37 # DW_AT_producer 115 .byte 14 # DW_FORM_strp 116 .byte 19 # DW_AT_language 117 .byte 5 # DW_FORM_data2 118 .byte 3 # DW_AT_name 119 .byte 14 # DW_FORM_strp 120 .byte 16 # DW_AT_stmt_list 121 .byte 23 # DW_FORM_sec_offset 122 .byte 27 # DW_AT_comp_dir 123 .byte 14 # DW_FORM_strp 124 .byte 17 # DW_AT_low_pc 125 .byte 1 # DW_FORM_addr 126 .byte 18 # DW_AT_high_pc 127 .byte 6 # DW_FORM_data4 128 .byte 0 # EOM(1) 129 .byte 0 # EOM(2) 130 .byte 2 # Abbreviation Code 131 .byte 46 # DW_TAG_subprogram 132 .byte 1 # DW_CHILDREN_yes 133 .byte 17 # DW_AT_low_pc 134 .byte 1 # DW_FORM_addr 135 .byte 18 # DW_AT_high_pc 136 .byte 6 # DW_FORM_data4 137 .byte 64 # DW_AT_frame_base 138 .byte 24 # DW_FORM_exprloc 139 .ascii "\227B" # DW_AT_GNU_all_call_sites 140 .byte 25 # DW_FORM_flag_present 141 .byte 3 # DW_AT_name 142 .byte 14 # DW_FORM_strp 143 .byte 58 # DW_AT_decl_file 144 .byte 11 # DW_FORM_data1 145 .byte 59 # DW_AT_decl_line 146 .byte 11 # DW_FORM_data1 147 .byte 73 # DW_AT_type 148 .byte 16 # DW_FORM_ref_addr 149 .byte 63 # DW_AT_external 150 .byte 25 # DW_FORM_flag_present 151 .byte 0 # EOM(1) 152 .byte 0 # EOM(2) 153 .byte 3 # Abbreviation Code 154 .byte 5 # DW_TAG_formal_parameter 155 .byte 0 # DW_CHILDREN_no 156 .byte 2 # DW_AT_location 157 .byte 24 # DW_FORM_exprloc 158 .byte 3 # DW_AT_name 159 .byte 14 # DW_FORM_strp 160 .byte 58 # DW_AT_decl_file 161 .byte 11 # DW_FORM_data1 162 .byte 59 # DW_AT_decl_line 163 .byte 11 # DW_FORM_data1 164 .byte 73 # DW_AT_type 165 .byte 16 # DW_FORM_ref_addr 166 .byte 0 # EOM(1) 167 .byte 0 # EOM(2) 168 .byte 4 # Abbreviation Code 169 .byte 5 # DW_TAG_formal_parameter 170 .byte 0 # DW_CHILDREN_no 171 .byte 2 # DW_AT_location 172 .byte 24 # DW_FORM_exprloc 173 .byte 3 # DW_AT_name 174 .byte 14 # DW_FORM_strp 175 .byte 58 # DW_AT_decl_file 176 .byte 11 # DW_FORM_data1 177 .byte 59 # DW_AT_decl_line 178 .byte 11 # DW_FORM_data1 179 .byte 73 # DW_AT_type 180 .byte 19 # DW_FORM_ref4 181 .byte 0 # EOM(1) 182 .byte 0 # EOM(2) 183 .byte 5 # Abbreviation Code 184 .byte 52 # DW_TAG_variable 185 .byte 0 # DW_CHILDREN_no 186 .byte 2 # DW_AT_location 187 .byte 23 # DW_FORM_sec_offset 188 .byte 3 # DW_AT_name 189 .byte 14 # DW_FORM_strp 190 .byte 58 # DW_AT_decl_file 191 .byte 11 # DW_FORM_data1 192 .byte 59 # DW_AT_decl_line 193 .byte 11 # DW_FORM_data1 194 .byte 73 # DW_AT_type 195 .byte 19 # DW_FORM_ref4 196 .byte 0 # EOM(1) 197 .byte 0 # EOM(2) 198 .byte 6 # Abbreviation Code 199 .byte 15 # DW_TAG_pointer_type 200 .byte 0 # DW_CHILDREN_no 201 .byte 73 # DW_AT_type 202 .byte 19 # DW_FORM_ref4 203 .byte 0 # EOM(1) 204 .byte 0 # EOM(2) 205 .byte 7 # Abbreviation Code 206 .byte 36 # DW_TAG_base_type 207 .byte 0 # DW_CHILDREN_no 208 .byte 3 # DW_AT_name 209 .byte 14 # DW_FORM_strp 210 .byte 62 # DW_AT_encoding 211 .byte 11 # DW_FORM_data1 212 .byte 11 # DW_AT_byte_size 213 .byte 11 # DW_FORM_data1 214 .byte 0 # EOM(1) 215 .byte 0 # EOM(2) 216 .byte 8 # Abbreviation Code 217 .byte 19 # DW_TAG_structure_type 218 .byte 1 # DW_CHILDREN_yes 219 .byte 54 # DW_AT_calling_convention 220 .byte 11 # DW_FORM_data1 221 .byte 3 # DW_AT_name 222 .byte 14 # DW_FORM_strp 223 .byte 11 # DW_AT_byte_size 224 .byte 11 # DW_FORM_data1 225 .byte 58 # DW_AT_decl_file 226 .byte 11 # DW_FORM_data1 227 .byte 59 # DW_AT_decl_line 228 .byte 11 # DW_FORM_data1 229 .byte 0 # EOM(1) 230 .byte 0 # EOM(2) 231 .byte 9 # Abbreviation Code 232 .byte 13 # DW_TAG_member 233 .byte 0 # DW_CHILDREN_no 234 .byte 3 # DW_AT_name 235 .byte 14 # DW_FORM_strp 236 .byte 73 # DW_AT_type 237 .byte 16 # DW_FORM_ref_addr 238 .byte 58 # DW_AT_decl_file 239 .byte 11 # DW_FORM_data1 240 .byte 59 # DW_AT_decl_line 241 .byte 11 # DW_FORM_data1 242 .byte 56 # DW_AT_data_member_location 243 .byte 11 # DW_FORM_data1 244 .byte 0 # EOM(1) 245 .byte 0 # EOM(2) 246 .byte 10 # Abbreviation Code 247 .byte 46 # DW_TAG_subprogram 248 .byte 1 # DW_CHILDREN_yes 249 .byte 110 # DW_AT_linkage_name 250 .byte 14 # DW_FORM_strp 251 .byte 3 # DW_AT_name 252 .byte 14 # DW_FORM_strp 253 .byte 58 # DW_AT_decl_file 254 .byte 11 # DW_FORM_data1 255 .byte 59 # DW_AT_decl_line 256 .byte 11 # DW_FORM_data1 257 .byte 73 # DW_AT_type 258 .byte 19 # DW_FORM_ref4 259 .byte 32 # DW_AT_inline 260 .byte 11 # DW_FORM_data1 261 .byte 0 # EOM(1) 262 .byte 0 # EOM(2) 263 .byte 11 # Abbreviation Code 264 .byte 5 # DW_TAG_formal_parameter 265 .byte 0 # DW_CHILDREN_no 266 .byte 3 # DW_AT_name 267 .byte 14 # DW_FORM_strp 268 .byte 58 # DW_AT_decl_file 269 .byte 11 # DW_FORM_data1 270 .byte 59 # DW_AT_decl_line 271 .byte 11 # DW_FORM_data1 272 .byte 73 # DW_AT_type 273 .byte 19 # DW_FORM_ref4 274 .byte 0 # EOM(1) 275 .byte 0 # EOM(2) 276 .byte 12 # Abbreviation Code 277 .byte 16 # DW_TAG_reference_type 278 .byte 0 # DW_CHILDREN_no 279 .byte 73 # DW_AT_type 280 .byte 19 # DW_FORM_ref4 281 .byte 0 # EOM(1) 282 .byte 0 # EOM(2) 283 .byte 13 # Abbreviation Code 284 .byte 13 # DW_TAG_member 285 .byte 0 # DW_CHILDREN_no 286 .byte 3 # DW_AT_name 287 .byte 14 # DW_FORM_strp 288 .byte 73 # DW_AT_type 289 .byte 19 # DW_FORM_ref4 290 .byte 58 # DW_AT_decl_file 291 .byte 11 # DW_FORM_data1 292 .byte 59 # DW_AT_decl_line 293 .byte 11 # DW_FORM_data1 294 .byte 56 # DW_AT_data_member_location 295 .byte 11 # DW_FORM_data1 296 .byte 0 # EOM(1) 297 .byte 0 # EOM(2) 298 .byte 14 # Abbreviation Code 299 .byte 46 # DW_TAG_subprogram 300 .byte 1 # DW_CHILDREN_yes 301 .byte 17 # DW_AT_low_pc 302 .byte 1 # DW_FORM_addr 303 .byte 18 # DW_AT_high_pc 304 .byte 6 # DW_FORM_data4 305 .byte 64 # DW_AT_frame_base 306 .byte 24 # DW_FORM_exprloc 307 .ascii "\227B" # DW_AT_GNU_all_call_sites 308 .byte 25 # DW_FORM_flag_present 309 .byte 110 # DW_AT_linkage_name 310 .byte 14 # DW_FORM_strp 311 .byte 3 # DW_AT_name 312 .byte 14 # DW_FORM_strp 313 .byte 58 # DW_AT_decl_file 314 .byte 11 # DW_FORM_data1 315 .byte 59 # DW_AT_decl_line 316 .byte 11 # DW_FORM_data1 317 .byte 73 # DW_AT_type 318 .byte 19 # DW_FORM_ref4 319 .byte 63 # DW_AT_external 320 .byte 25 # DW_FORM_flag_present 321 .byte 0 # EOM(1) 322 .byte 0 # EOM(2) 323 .byte 15 # Abbreviation Code 324 .byte 29 # DW_TAG_inlined_subroutine 325 .byte 0 # DW_CHILDREN_no 326 .byte 49 # DW_AT_abstract_origin 327 .byte 19 # DW_FORM_ref4 328 .byte 17 # DW_AT_low_pc 329 .byte 1 # DW_FORM_addr 330 .byte 18 # DW_AT_high_pc 331 .byte 6 # DW_FORM_data4 332 .byte 88 # DW_AT_call_file 333 .byte 11 # DW_FORM_data1 334 .byte 89 # DW_AT_call_line 335 .byte 11 # DW_FORM_data1 336 .byte 87 # DW_AT_call_column 337 .byte 11 # DW_FORM_data1 338 .byte 0 # EOM(1) 339 .byte 0 # EOM(2) 340 .byte 0 # EOM(3) 341 .section .debug_info,"",@progbits 342.Lcu_begin0: 343 .long .Ldebug_info_end0-.Ldebug_info_start0 # Length of Unit 344.Ldebug_info_start0: 345 .short 4 # DWARF version number 346 .long .debug_abbrev # Offset Into Abbrev. Section 347 .byte 8 # Address Size (in bytes) 348 .byte 1 # Abbrev [1] 0xb:0x96 DW_TAG_compile_unit 349 .long .Linfo_string0 # DW_AT_producer 350 .short 33 # DW_AT_language 351 .long .Linfo_string1 # DW_AT_name 352 .long .Lline_table_start0 # DW_AT_stmt_list 353 .long .Linfo_string2 # DW_AT_comp_dir 354 .quad .Lfunc_begin0 # DW_AT_low_pc 355 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc 356 .byte 2 # Abbrev [2] 0x2a:0x43 DW_TAG_subprogram 357 .quad .Lfunc_begin0 # DW_AT_low_pc 358 .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc 359 .byte 1 # DW_AT_frame_base 360 .byte 87 361 # DW_AT_GNU_all_call_sites 362 .long .Linfo_string11 # DW_AT_name 363 .byte 1 # DW_AT_decl_file 364 .byte 9 # DW_AT_decl_line 365 .long .debug_info+231 # DW_AT_type 366 # DW_AT_external 367 .byte 3 # Abbrev [3] 0x43:0xd DW_TAG_formal_parameter 368 .byte 1 # DW_AT_location 369 .byte 85 370 .long .Linfo_string14 # DW_AT_name 371 .byte 1 # DW_AT_decl_file 372 .byte 9 # DW_AT_decl_line 373 .long .debug_info+231 # DW_AT_type 374 .byte 4 # Abbrev [4] 0x50:0xd DW_TAG_formal_parameter 375 .byte 1 # DW_AT_location 376 .byte 84 377 .long .Linfo_string15 # DW_AT_name 378 .byte 1 # DW_AT_decl_file 379 .byte 9 # DW_AT_decl_line 380 .long 109 # DW_AT_type 381 .byte 5 # Abbrev [5] 0x5d:0xf DW_TAG_variable 382 .long .Ldebug_loc0 # DW_AT_location 383 .long .Linfo_string17 # DW_AT_name 384 .byte 1 # DW_AT_decl_file 385 .byte 10 # DW_AT_decl_line 386 .long 126 # DW_AT_type 387 .byte 0 # End Of Children Mark 388 .byte 6 # Abbrev [6] 0x6d:0x5 DW_TAG_pointer_type 389 .long 114 # DW_AT_type 390 .byte 6 # Abbrev [6] 0x72:0x5 DW_TAG_pointer_type 391 .long 119 # DW_AT_type 392 .byte 7 # Abbrev [7] 0x77:0x7 DW_TAG_base_type 393 .long .Linfo_string16 # DW_AT_name 394 .byte 6 # DW_AT_encoding 395 .byte 1 # DW_AT_byte_size 396 .byte 8 # Abbrev [8] 0x7e:0x22 DW_TAG_structure_type 397 .byte 5 # DW_AT_calling_convention 398 .long .Linfo_string18 # DW_AT_name 399 .byte 8 # DW_AT_byte_size 400 .byte 1 # DW_AT_decl_file 401 .byte 1 # DW_AT_decl_line 402 .byte 9 # Abbrev [9] 0x87:0xc DW_TAG_member 403 .long .Linfo_string8 # DW_AT_name 404 .long .debug_info+231 # DW_AT_type 405 .byte 1 # DW_AT_decl_file 406 .byte 2 # DW_AT_decl_line 407 .byte 0 # DW_AT_data_member_location 408 .byte 9 # Abbrev [9] 0x93:0xc DW_TAG_member 409 .long .Linfo_string9 # DW_AT_name 410 .long .debug_info+231 # DW_AT_type 411 .byte 1 # DW_AT_decl_file 412 .byte 3 # DW_AT_decl_line 413 .byte 4 # DW_AT_data_member_location 414 .byte 0 # End Of Children Mark 415 .byte 0 # End Of Children Mark 416.Ldebug_info_end0: 417.Lcu_begin1: 418 .long .Ldebug_info_end1-.Ldebug_info_start1 # Length of Unit 419.Ldebug_info_start1: 420 .short 4 # DWARF version number 421 .long .debug_abbrev # Offset Into Abbrev. Section 422 .byte 8 # Address Size (in bytes) 423 .byte 1 # Abbrev [1] 0xb:0xb8 DW_TAG_compile_unit 424 .long .Linfo_string0 # DW_AT_producer 425 .short 33 # DW_AT_language 426 .long .Linfo_string3 # DW_AT_name 427 .long .Lline_table_start0 # DW_AT_stmt_list 428 .long .Linfo_string2 # DW_AT_comp_dir 429 .quad .Lfunc_begin1 # DW_AT_low_pc 430 .long .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc 431 .byte 10 # Abbrev [10] 0x2a:0x1c DW_TAG_subprogram 432 .long .Linfo_string4 # DW_AT_linkage_name 433 .long .Linfo_string5 # DW_AT_name 434 .byte 2 # DW_AT_decl_file 435 .byte 6 # DW_AT_decl_line 436 .long 70 # DW_AT_type 437 .byte 1 # DW_AT_inline 438 .byte 11 # Abbrev [11] 0x3a:0xb DW_TAG_formal_parameter 439 .long .Linfo_string7 # DW_AT_name 440 .byte 2 # DW_AT_decl_file 441 .byte 6 # DW_AT_decl_line 442 .long 77 # DW_AT_type 443 .byte 0 # End Of Children Mark 444 .byte 7 # Abbrev [7] 0x46:0x7 DW_TAG_base_type 445 .long .Linfo_string6 # DW_AT_name 446 .byte 5 # DW_AT_encoding 447 .byte 4 # DW_AT_byte_size 448 .byte 12 # Abbrev [12] 0x4d:0x5 DW_TAG_reference_type 449 .long 82 # DW_AT_type 450 .byte 8 # Abbrev [8] 0x52:0x22 DW_TAG_structure_type 451 .byte 5 # DW_AT_calling_convention 452 .long .Linfo_string10 # DW_AT_name 453 .byte 8 # DW_AT_byte_size 454 .byte 2 # DW_AT_decl_file 455 .byte 1 # DW_AT_decl_line 456 .byte 13 # Abbrev [13] 0x5b:0xc DW_TAG_member 457 .long .Linfo_string8 # DW_AT_name 458 .long 70 # DW_AT_type 459 .byte 2 # DW_AT_decl_file 460 .byte 2 # DW_AT_decl_line 461 .byte 0 # DW_AT_data_member_location 462 .byte 13 # Abbrev [13] 0x67:0xc DW_TAG_member 463 .long .Linfo_string9 # DW_AT_name 464 .long 70 # DW_AT_type 465 .byte 2 # DW_AT_decl_file 466 .byte 3 # DW_AT_decl_line 467 .byte 4 # DW_AT_data_member_location 468 .byte 0 # End Of Children Mark 469 .byte 14 # Abbrev [14] 0x74:0x4e DW_TAG_subprogram 470 .quad .Lfunc_begin1 # DW_AT_low_pc 471 .long .Lfunc_end1-.Lfunc_begin1 # DW_AT_high_pc 472 .byte 1 # DW_AT_frame_base 473 .byte 87 474 # DW_AT_GNU_all_call_sites 475 .long .Linfo_string12 # DW_AT_linkage_name 476 .long .Linfo_string13 # DW_AT_name 477 .byte 2 # DW_AT_decl_file 478 .byte 9 # DW_AT_decl_line 479 .long 70 # DW_AT_type 480 # DW_AT_external 481 .byte 4 # Abbrev [4] 0x91:0xd DW_TAG_formal_parameter 482 .byte 1 # DW_AT_location 483 .byte 85 484 .long .Linfo_string19 # DW_AT_name 485 .byte 2 # DW_AT_decl_file 486 .byte 9 # DW_AT_decl_line 487 .long 70 # DW_AT_type 488 .byte 5 # Abbrev [5] 0x9e:0xf DW_TAG_variable 489 .long .Ldebug_loc1 # DW_AT_location 490 .long .Linfo_string17 # DW_AT_name 491 .byte 2 # DW_AT_decl_file 492 .byte 10 # DW_AT_decl_line 493 .long 82 # DW_AT_type 494 .byte 15 # Abbrev [15] 0xad:0x14 DW_TAG_inlined_subroutine 495 .long 42 # DW_AT_abstract_origin 496 .quad .Lfunc_begin1 # DW_AT_low_pc 497 .long .Ltmp1-.Lfunc_begin1 # DW_AT_high_pc 498 .byte 2 # DW_AT_call_file 499 .byte 13 # DW_AT_call_line 500 .byte 10 # DW_AT_call_column 501 .byte 0 # End Of Children Mark 502 .byte 0 # End Of Children Mark 503.Ldebug_info_end1: 504 .section .debug_str,"MS",@progbits,1 505.Linfo_string0: 506 .asciz "clang version 18.0.0 (git@github.com:llvm/llvm-project.git 37d6c1cc7d4dd3a8a47ba62254bc88521bd50d66)" # string offset=0 507.Linfo_string1: 508 .asciz "main.cpp" # string offset=101 509.Linfo_string2: 510 .asciz "/dwarf4CrossCULocList" # string offset=110 511.Linfo_string3: 512 .asciz "helper1.cpp" # string offset=169 513.Linfo_string4: 514 .asciz "_ZL6helperR4Foo2" # string offset=181 515.Linfo_string5: 516 .asciz "helper" # string offset=198 517.Linfo_string6: 518 .asciz "int" # string offset=205 519.Linfo_string7: 520 .asciz "f" # string offset=209 521.Linfo_string8: 522 .asciz "x" # string offset=211 523.Linfo_string9: 524 .asciz "y" # string offset=213 525.Linfo_string10: 526 .asciz "Foo2" # string offset=215 527.Linfo_string11: 528 .asciz "main" # string offset=220 529.Linfo_string12: 530 .asciz "_Z4foo2i" # string offset=225 531.Linfo_string13: 532 .asciz "foo2" # string offset=234 533.Linfo_string14: 534 .asciz "argc" # string offset=239 535.Linfo_string15: 536 .asciz "argv" # string offset=244 537.Linfo_string16: 538 .asciz "char" # string offset=249 539.Linfo_string17: 540 .asciz "foo" # string offset=254 541.Linfo_string18: 542 .asciz "Foo" # string offset=258 543.Linfo_string19: 544 .asciz "i" # string offset=262 545 .ident "clang version 18.0.0 (git@github.com:llvm/llvm-project.git 37d6c1cc7d4dd3a8a47ba62254bc88521bd50d66)" 546 .ident "clang version 18.0.0 (git@github.com:llvm/llvm-project.git 37d6c1cc7d4dd3a8a47ba62254bc88521bd50d66)" 547 .section ".note.GNU-stack","",@progbits 548 .addrsig 549 .section .debug_line,"",@progbits 550.Lline_table_start0: 551