1/* This testcase is part of GDB, the GNU debugger. 2 3 Copyright 2012-2021 Free Software Foundation, Inc. 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 3 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 17 18/* This file is compiled from gdb.arch/amd64-entry-value-inline.c 19 using -g -dA -S -O2. */ 20 21 .file "amd64-entry-value-inline.c" 22 .text 23.Ltext0: 24 .p2align 4,,15 25 .type fn1, @function 26fn1: 27.LFB0: 28 .file 1 "gdb.arch/amd64-entry-value-inline.c" 29 # gdb.arch/amd64-entry-value-inline.c:22 30 .loc 1 22 0 31 .cfi_startproc 32.LVL0: 33# BLOCK 2 freq:10000 seq:0 34# PRED: ENTRY [100.0%] (FALLTHRU) 35 # gdb.arch/amd64-entry-value-inline.c:23 36 .loc 1 23 0 37 movl v(%rip), %eax 38 addl $1, %eax 39 movl %eax, v(%rip) 40# SUCC: EXIT [100.0%] 41 ret 42 .cfi_endproc 43.LFE0: 44 .size fn1, .-fn1 45 .p2align 4,,15 46 .globl fn3 47 .type fn3, @function 48fn3: 49.LFB2: 50 # gdb.arch/amd64-entry-value-inline.c:41 51 .loc 1 41 0 52 .cfi_startproc 53.LVL1: 54# BLOCK 2 freq:10000 seq:0 55# PRED: ENTRY [100.0%] (FALLTHRU) 56.LBB4: 57.LBB5: 58 # gdb.arch/amd64-entry-value-inline.c:29 59 .loc 1 29 0 60 testl %esi, %esi 61.LBE5: 62.LBE4: 63 # gdb.arch/amd64-entry-value-inline.c:41 64 .loc 1 41 0 65 pushq %rbx 66 .cfi_def_cfa_offset 16 67 .cfi_offset 3, -16 68 # gdb.arch/amd64-entry-value-inline.c:41 69 .loc 1 41 0 70 movl %edi, %ebx 71.LBB7: 72.LBB6: 73# SUCC: 3 [39.0%] (FALLTHRU,CAN_FALLTHRU) 4 [61.0%] (CAN_FALLTHRU) 74 # gdb.arch/amd64-entry-value-inline.c:29 75 .loc 1 29 0 76 je .L3 77# BLOCK 3 freq:3898 seq:1 78# PRED: 2 [39.0%] (FALLTHRU,CAN_FALLTHRU) 79 # gdb.arch/amd64-entry-value-inline.c:31 80 .loc 1 31 0 81 call fn1 82.LVL2: 83 # gdb.arch/amd64-entry-value-inline.c:32 84 .loc 1 32 0 85 leal -2(%rbx), %eax 86.LVL3: 87 # gdb.arch/amd64-entry-value-inline.c:33 88 .loc 1 33 0 89 movl %eax, %edi 90 imull %eax, %edi 91 addl $1, %edi 92.LVL4: 93 imull %edi, %eax 94.LVL5: 95 # gdb.arch/amd64-entry-value-inline.c:34 96 .loc 1 34 0 97 leal (%rbx,%rax), %edi 98 call fn1 99.LVL6: 100# SUCC: 4 [100.0%] (FALLTHRU,CAN_FALLTHRU) 101# BLOCK 4 freq:10000 seq:2 102# PRED: 2 [61.0%] (CAN_FALLTHRU) 3 [100.0%] (FALLTHRU,CAN_FALLTHRU) 103.L3: 104.LBE6: 105.LBE7: 106 # gdb.arch/amd64-entry-value-inline.c:43 107 .loc 1 43 0 108 movl %ebx, %eax 109 popq %rbx 110 .cfi_def_cfa_offset 8 111.LVL7: 112# SUCC: EXIT [100.0%] 113 ret 114 .cfi_endproc 115.LFE2: 116 .size fn3, .-fn3 117 .section .text.startup,"ax",@progbits 118 .p2align 4,,15 119 .globl main 120 .type main, @function 121main: 122.LFB3: 123 # gdb.arch/amd64-entry-value-inline.c:47 124 .loc 1 47 0 125 .cfi_startproc 126# BLOCK 2 freq:10000 seq:0 127# PRED: ENTRY [100.0%] (FALLTHRU) 128 # gdb.arch/amd64-entry-value-inline.c:48 129 .loc 1 48 0 130 movl $25, %esi 131 movl $6, %edi 132 call fn3 133.LVL8: 134 # gdb.arch/amd64-entry-value-inline.c:50 135 .loc 1 50 0 136 xorl %eax, %eax 137# SUCC: EXIT [100.0%] 138 ret 139 .cfi_endproc 140.LFE3: 141 .size main, .-main 142 .local v 143 .comm v,4,4 144 .text 145.Letext0: 146 .section .debug_info,"",@progbits 147.Ldebug_info0: 148 .long 0x164 # Length of Compilation Unit Info 149 .value 0x4 # DWARF version number 150 .long .Ldebug_abbrev0 # Offset Into Abbrev. Section 151 .byte 0x8 # Pointer Size (in bytes) 152 .uleb128 0x1 # (DIE (0xb) DW_TAG_compile_unit) 153 .long .LASF0 # DW_AT_producer: "GNU C 4.8.0 20121005 (experimental) -mtune=generic -march=x86-64 -g -O2" 154 .byte 0x1 # DW_AT_language 155 .long .LASF1 # DW_AT_name: "gdb.arch/amd64-entry-value-inline.c" 156 .long .LASF2 # DW_AT_comp_dir: "" 157 .long .Ldebug_ranges0+0x30 # DW_AT_ranges 158 .quad 0 # DW_AT_low_pc 159 .long .Ldebug_line0 # DW_AT_stmt_list 160 .uleb128 0x2 # (DIE (0x29) DW_TAG_subprogram) 161 .ascii "fn1\0" # DW_AT_name 162 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) 163 .byte 0x15 # DW_AT_decl_line 164 # DW_AT_prototyped 165 .quad .LFB0 # DW_AT_low_pc 166 .quad .LFE0-.LFB0 # DW_AT_high_pc 167 .uleb128 0x1 # DW_AT_frame_base 168 .byte 0x9c # DW_OP_call_frame_cfa 169 # DW_AT_GNU_all_call_sites 170 .long 0x52 # DW_AT_sibling 171 .uleb128 0x3 # (DIE (0x46) DW_TAG_formal_parameter) 172 .ascii "x\0" # DW_AT_name 173 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) 174 .byte 0x15 # DW_AT_decl_line 175 .long 0x52 # DW_AT_type 176 .uleb128 0x1 # DW_AT_location 177 .byte 0x55 # DW_OP_reg5 178 .byte 0 # end of children of DIE 0x29 179 .uleb128 0x4 # (DIE (0x52) DW_TAG_base_type) 180 .byte 0x4 # DW_AT_byte_size 181 .byte 0x5 # DW_AT_encoding 182 .ascii "int\0" # DW_AT_name 183 .uleb128 0x5 # (DIE (0x59) DW_TAG_subprogram) 184 .ascii "fn2\0" # DW_AT_name 185 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) 186 .byte 0x1b # DW_AT_decl_line 187 # DW_AT_prototyped 188 .long 0x52 # DW_AT_type 189 .byte 0x1 # DW_AT_inline 190 .long 0x7c # DW_AT_sibling 191 .uleb128 0x6 # (DIE (0x69) DW_TAG_formal_parameter) 192 .ascii "x\0" # DW_AT_name 193 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) 194 .byte 0x1b # DW_AT_decl_line 195 .long 0x52 # DW_AT_type 196 .uleb128 0x6 # (DIE (0x72) DW_TAG_formal_parameter) 197 .ascii "y\0" # DW_AT_name 198 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) 199 .byte 0x1b # DW_AT_decl_line 200 .long 0x52 # DW_AT_type 201 .byte 0 # end of children of DIE 0x59 202 .uleb128 0x7 # (DIE (0x7c) DW_TAG_subprogram) 203 # DW_AT_external 204 .ascii "fn3\0" # DW_AT_name 205 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) 206 .byte 0x28 # DW_AT_decl_line 207 # DW_AT_prototyped 208 .long 0x52 # DW_AT_type 209 .quad .LFB2 # DW_AT_low_pc 210 .quad .LFE2-.LFB2 # DW_AT_high_pc 211 .uleb128 0x1 # DW_AT_frame_base 212 .byte 0x9c # DW_OP_call_frame_cfa 213 # DW_AT_GNU_all_call_sites 214 .long 0x115 # DW_AT_sibling 215 .uleb128 0x8 # (DIE (0x9d) DW_TAG_formal_parameter) 216 .ascii "x\0" # DW_AT_name 217 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) 218 .byte 0x28 # DW_AT_decl_line 219 .long 0x52 # DW_AT_type 220 .long .LLST0 # DW_AT_location 221 .uleb128 0x8 # (DIE (0xaa) DW_TAG_formal_parameter) 222 .ascii "y\0" # DW_AT_name 223 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) 224 .byte 0x28 # DW_AT_decl_line 225 .long 0x52 # DW_AT_type 226 .long .LLST1 # DW_AT_location 227 .uleb128 0x9 # (DIE (0xb7) DW_TAG_inlined_subroutine) 228 .long 0x59 # DW_AT_abstract_origin 229 .quad .LBB4 # DW_AT_entry_pc 230 .long .Ldebug_ranges0+0 # DW_AT_ranges 231 .byte 0x1 # DW_AT_call_file (gdb.arch/amd64-entry-value-inline.c) 232 .byte 0x2a # DW_AT_call_line 233 .uleb128 0xa # (DIE (0xca) DW_TAG_formal_parameter) 234 .long 0x72 # DW_AT_abstract_origin 235 .long .LLST2 # DW_AT_location 236 .uleb128 0xa # (DIE (0xd3) DW_TAG_formal_parameter) 237 .long 0x69 # DW_AT_abstract_origin 238 .long .LLST0 # DW_AT_location 239 .uleb128 0xb # (DIE (0xdc) DW_TAG_GNU_call_site) 240 .quad .LVL2 # DW_AT_low_pc 241 .long 0x29 # DW_AT_abstract_origin 242 .long 0xf4 # DW_AT_sibling 243 .uleb128 0xc # (DIE (0xed) DW_TAG_GNU_call_site_parameter) 244 .uleb128 0x1 # DW_AT_location 245 .byte 0x55 # DW_OP_reg5 246 .uleb128 0x2 # DW_AT_GNU_call_site_value 247 .byte 0x73 # DW_OP_breg3 248 .sleb128 0 249 .byte 0 # end of children of DIE 0xdc 250 .uleb128 0xd # (DIE (0xf4) DW_TAG_GNU_call_site) 251 .quad .LVL6 # DW_AT_low_pc 252 .long 0x29 # DW_AT_abstract_origin 253 .uleb128 0xc # (DIE (0x101) DW_TAG_GNU_call_site_parameter) 254 .uleb128 0x1 # DW_AT_location 255 .byte 0x55 # DW_OP_reg5 256 .uleb128 0xd # DW_AT_GNU_call_site_value 257 .byte 0x73 # DW_OP_breg3 258 .sleb128 -2 259 .byte 0x73 # DW_OP_breg3 260 .sleb128 -2 261 .byte 0x73 # DW_OP_breg3 262 .sleb128 -2 263 .byte 0x1e # DW_OP_mul 264 .byte 0x23 # DW_OP_plus_uconst 265 .uleb128 0x1 266 .byte 0x1e # DW_OP_mul 267 .byte 0x73 # DW_OP_breg3 268 .sleb128 0 269 .byte 0x22 # DW_OP_plus 270 .byte 0 # end of children of DIE 0xf4 271 .byte 0 # end of children of DIE 0xb7 272 .byte 0 # end of children of DIE 0x7c 273 .uleb128 0xe # (DIE (0x115) DW_TAG_subprogram) 274 # DW_AT_external 275 .long .LASF3 # DW_AT_name: "main" 276 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) 277 .byte 0x2e # DW_AT_decl_line 278 .long 0x52 # DW_AT_type 279 .quad .LFB3 # DW_AT_low_pc 280 .quad .LFE3-.LFB3 # DW_AT_high_pc 281 .uleb128 0x1 # DW_AT_frame_base 282 .byte 0x9c # DW_OP_call_frame_cfa 283 # DW_AT_GNU_all_call_sites 284 .long 0x14f # DW_AT_sibling 285 .uleb128 0xd # (DIE (0x136) DW_TAG_GNU_call_site) 286 .quad .LVL8 # DW_AT_low_pc 287 .long 0x7c # DW_AT_abstract_origin 288 .uleb128 0xc # (DIE (0x143) DW_TAG_GNU_call_site_parameter) 289 .uleb128 0x1 # DW_AT_location 290 .byte 0x55 # DW_OP_reg5 291 .uleb128 0x1 # DW_AT_GNU_call_site_value 292 .byte 0x36 # DW_OP_lit6 293 .uleb128 0xc # (DIE (0x148) DW_TAG_GNU_call_site_parameter) 294 .uleb128 0x1 # DW_AT_location 295 .byte 0x54 # DW_OP_reg4 296 .uleb128 0x1 # DW_AT_GNU_call_site_value 297 .byte 0x49 # DW_OP_lit25 298 .byte 0 # end of children of DIE 0x136 299 .byte 0 # end of children of DIE 0x115 300 .uleb128 0xf # (DIE (0x14f) DW_TAG_variable) 301 .ascii "v\0" # DW_AT_name 302 .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) 303 .byte 0x12 # DW_AT_decl_line 304 .long 0x162 # DW_AT_type 305 .uleb128 0x9 # DW_AT_location 306 .byte 0x3 # DW_OP_addr 307 .quad v 308 .uleb128 0x10 # (DIE (0x162) DW_TAG_volatile_type) 309 .long 0x52 # DW_AT_type 310 .byte 0 # end of children of DIE 0xb 311 .section .debug_abbrev,"",@progbits 312.Ldebug_abbrev0: 313 .uleb128 0x1 # (abbrev code) 314 .uleb128 0x11 # (TAG: DW_TAG_compile_unit) 315 .byte 0x1 # DW_children_yes 316 .uleb128 0x25 # (DW_AT_producer) 317 .uleb128 0xe # (DW_FORM_strp) 318 .uleb128 0x13 # (DW_AT_language) 319 .uleb128 0xb # (DW_FORM_data1) 320 .uleb128 0x3 # (DW_AT_name) 321 .uleb128 0xe # (DW_FORM_strp) 322 .uleb128 0x1b # (DW_AT_comp_dir) 323 .uleb128 0xe # (DW_FORM_strp) 324 .uleb128 0x55 # (DW_AT_ranges) 325 .uleb128 0x17 # (DW_FORM_sec_offset) 326 .uleb128 0x11 # (DW_AT_low_pc) 327 .uleb128 0x1 # (DW_FORM_addr) 328 .uleb128 0x10 # (DW_AT_stmt_list) 329 .uleb128 0x17 # (DW_FORM_sec_offset) 330 .byte 0 331 .byte 0 332 .uleb128 0x2 # (abbrev code) 333 .uleb128 0x2e # (TAG: DW_TAG_subprogram) 334 .byte 0x1 # DW_children_yes 335 .uleb128 0x3 # (DW_AT_name) 336 .uleb128 0x8 # (DW_FORM_string) 337 .uleb128 0x3a # (DW_AT_decl_file) 338 .uleb128 0xb # (DW_FORM_data1) 339 .uleb128 0x3b # (DW_AT_decl_line) 340 .uleb128 0xb # (DW_FORM_data1) 341 .uleb128 0x27 # (DW_AT_prototyped) 342 .uleb128 0x19 # (DW_FORM_flag_present) 343 .uleb128 0x11 # (DW_AT_low_pc) 344 .uleb128 0x1 # (DW_FORM_addr) 345 .uleb128 0x12 # (DW_AT_high_pc) 346 .uleb128 0x7 # (DW_FORM_data8) 347 .uleb128 0x40 # (DW_AT_frame_base) 348 .uleb128 0x18 # (DW_FORM_exprloc) 349 .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) 350 .uleb128 0x19 # (DW_FORM_flag_present) 351 .uleb128 0x1 # (DW_AT_sibling) 352 .uleb128 0x13 # (DW_FORM_ref4) 353 .byte 0 354 .byte 0 355 .uleb128 0x3 # (abbrev code) 356 .uleb128 0x5 # (TAG: DW_TAG_formal_parameter) 357 .byte 0 # DW_children_no 358 .uleb128 0x3 # (DW_AT_name) 359 .uleb128 0x8 # (DW_FORM_string) 360 .uleb128 0x3a # (DW_AT_decl_file) 361 .uleb128 0xb # (DW_FORM_data1) 362 .uleb128 0x3b # (DW_AT_decl_line) 363 .uleb128 0xb # (DW_FORM_data1) 364 .uleb128 0x49 # (DW_AT_type) 365 .uleb128 0x13 # (DW_FORM_ref4) 366 .uleb128 0x2 # (DW_AT_location) 367 .uleb128 0x18 # (DW_FORM_exprloc) 368 .byte 0 369 .byte 0 370 .uleb128 0x4 # (abbrev code) 371 .uleb128 0x24 # (TAG: DW_TAG_base_type) 372 .byte 0 # DW_children_no 373 .uleb128 0xb # (DW_AT_byte_size) 374 .uleb128 0xb # (DW_FORM_data1) 375 .uleb128 0x3e # (DW_AT_encoding) 376 .uleb128 0xb # (DW_FORM_data1) 377 .uleb128 0x3 # (DW_AT_name) 378 .uleb128 0x8 # (DW_FORM_string) 379 .byte 0 380 .byte 0 381 .uleb128 0x5 # (abbrev code) 382 .uleb128 0x2e # (TAG: DW_TAG_subprogram) 383 .byte 0x1 # DW_children_yes 384 .uleb128 0x3 # (DW_AT_name) 385 .uleb128 0x8 # (DW_FORM_string) 386 .uleb128 0x3a # (DW_AT_decl_file) 387 .uleb128 0xb # (DW_FORM_data1) 388 .uleb128 0x3b # (DW_AT_decl_line) 389 .uleb128 0xb # (DW_FORM_data1) 390 .uleb128 0x27 # (DW_AT_prototyped) 391 .uleb128 0x19 # (DW_FORM_flag_present) 392 .uleb128 0x49 # (DW_AT_type) 393 .uleb128 0x13 # (DW_FORM_ref4) 394 .uleb128 0x20 # (DW_AT_inline) 395 .uleb128 0xb # (DW_FORM_data1) 396 .uleb128 0x1 # (DW_AT_sibling) 397 .uleb128 0x13 # (DW_FORM_ref4) 398 .byte 0 399 .byte 0 400 .uleb128 0x6 # (abbrev code) 401 .uleb128 0x5 # (TAG: DW_TAG_formal_parameter) 402 .byte 0 # DW_children_no 403 .uleb128 0x3 # (DW_AT_name) 404 .uleb128 0x8 # (DW_FORM_string) 405 .uleb128 0x3a # (DW_AT_decl_file) 406 .uleb128 0xb # (DW_FORM_data1) 407 .uleb128 0x3b # (DW_AT_decl_line) 408 .uleb128 0xb # (DW_FORM_data1) 409 .uleb128 0x49 # (DW_AT_type) 410 .uleb128 0x13 # (DW_FORM_ref4) 411 .byte 0 412 .byte 0 413 .uleb128 0x7 # (abbrev code) 414 .uleb128 0x2e # (TAG: DW_TAG_subprogram) 415 .byte 0x1 # DW_children_yes 416 .uleb128 0x3f # (DW_AT_external) 417 .uleb128 0x19 # (DW_FORM_flag_present) 418 .uleb128 0x3 # (DW_AT_name) 419 .uleb128 0x8 # (DW_FORM_string) 420 .uleb128 0x3a # (DW_AT_decl_file) 421 .uleb128 0xb # (DW_FORM_data1) 422 .uleb128 0x3b # (DW_AT_decl_line) 423 .uleb128 0xb # (DW_FORM_data1) 424 .uleb128 0x27 # (DW_AT_prototyped) 425 .uleb128 0x19 # (DW_FORM_flag_present) 426 .uleb128 0x49 # (DW_AT_type) 427 .uleb128 0x13 # (DW_FORM_ref4) 428 .uleb128 0x11 # (DW_AT_low_pc) 429 .uleb128 0x1 # (DW_FORM_addr) 430 .uleb128 0x12 # (DW_AT_high_pc) 431 .uleb128 0x7 # (DW_FORM_data8) 432 .uleb128 0x40 # (DW_AT_frame_base) 433 .uleb128 0x18 # (DW_FORM_exprloc) 434 .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) 435 .uleb128 0x19 # (DW_FORM_flag_present) 436 .uleb128 0x1 # (DW_AT_sibling) 437 .uleb128 0x13 # (DW_FORM_ref4) 438 .byte 0 439 .byte 0 440 .uleb128 0x8 # (abbrev code) 441 .uleb128 0x5 # (TAG: DW_TAG_formal_parameter) 442 .byte 0 # DW_children_no 443 .uleb128 0x3 # (DW_AT_name) 444 .uleb128 0x8 # (DW_FORM_string) 445 .uleb128 0x3a # (DW_AT_decl_file) 446 .uleb128 0xb # (DW_FORM_data1) 447 .uleb128 0x3b # (DW_AT_decl_line) 448 .uleb128 0xb # (DW_FORM_data1) 449 .uleb128 0x49 # (DW_AT_type) 450 .uleb128 0x13 # (DW_FORM_ref4) 451 .uleb128 0x2 # (DW_AT_location) 452 .uleb128 0x17 # (DW_FORM_sec_offset) 453 .byte 0 454 .byte 0 455 .uleb128 0x9 # (abbrev code) 456 .uleb128 0x1d # (TAG: DW_TAG_inlined_subroutine) 457 .byte 0x1 # DW_children_yes 458 .uleb128 0x31 # (DW_AT_abstract_origin) 459 .uleb128 0x13 # (DW_FORM_ref4) 460 .uleb128 0x52 # (DW_AT_entry_pc) 461 .uleb128 0x1 # (DW_FORM_addr) 462 .uleb128 0x55 # (DW_AT_ranges) 463 .uleb128 0x17 # (DW_FORM_sec_offset) 464 .uleb128 0x58 # (DW_AT_call_file) 465 .uleb128 0xb # (DW_FORM_data1) 466 .uleb128 0x59 # (DW_AT_call_line) 467 .uleb128 0xb # (DW_FORM_data1) 468 .byte 0 469 .byte 0 470 .uleb128 0xa # (abbrev code) 471 .uleb128 0x5 # (TAG: DW_TAG_formal_parameter) 472 .byte 0 # DW_children_no 473 .uleb128 0x31 # (DW_AT_abstract_origin) 474 .uleb128 0x13 # (DW_FORM_ref4) 475 .uleb128 0x2 # (DW_AT_location) 476 .uleb128 0x17 # (DW_FORM_sec_offset) 477 .byte 0 478 .byte 0 479 .uleb128 0xb # (abbrev code) 480 .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site) 481 .byte 0x1 # DW_children_yes 482 .uleb128 0x11 # (DW_AT_low_pc) 483 .uleb128 0x1 # (DW_FORM_addr) 484 .uleb128 0x31 # (DW_AT_abstract_origin) 485 .uleb128 0x13 # (DW_FORM_ref4) 486 .uleb128 0x1 # (DW_AT_sibling) 487 .uleb128 0x13 # (DW_FORM_ref4) 488 .byte 0 489 .byte 0 490 .uleb128 0xc # (abbrev code) 491 .uleb128 0x410a # (TAG: DW_TAG_GNU_call_site_parameter) 492 .byte 0 # DW_children_no 493 .uleb128 0x2 # (DW_AT_location) 494 .uleb128 0x18 # (DW_FORM_exprloc) 495 .uleb128 0x2111 # (DW_AT_GNU_call_site_value) 496 .uleb128 0x18 # (DW_FORM_exprloc) 497 .byte 0 498 .byte 0 499 .uleb128 0xd # (abbrev code) 500 .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site) 501 .byte 0x1 # DW_children_yes 502 .uleb128 0x11 # (DW_AT_low_pc) 503 .uleb128 0x1 # (DW_FORM_addr) 504 .uleb128 0x31 # (DW_AT_abstract_origin) 505 .uleb128 0x13 # (DW_FORM_ref4) 506 .byte 0 507 .byte 0 508 .uleb128 0xe # (abbrev code) 509 .uleb128 0x2e # (TAG: DW_TAG_subprogram) 510 .byte 0x1 # DW_children_yes 511 .uleb128 0x3f # (DW_AT_external) 512 .uleb128 0x19 # (DW_FORM_flag_present) 513 .uleb128 0x3 # (DW_AT_name) 514 .uleb128 0xe # (DW_FORM_strp) 515 .uleb128 0x3a # (DW_AT_decl_file) 516 .uleb128 0xb # (DW_FORM_data1) 517 .uleb128 0x3b # (DW_AT_decl_line) 518 .uleb128 0xb # (DW_FORM_data1) 519 .uleb128 0x49 # (DW_AT_type) 520 .uleb128 0x13 # (DW_FORM_ref4) 521 .uleb128 0x11 # (DW_AT_low_pc) 522 .uleb128 0x1 # (DW_FORM_addr) 523 .uleb128 0x12 # (DW_AT_high_pc) 524 .uleb128 0x7 # (DW_FORM_data8) 525 .uleb128 0x40 # (DW_AT_frame_base) 526 .uleb128 0x18 # (DW_FORM_exprloc) 527 .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) 528 .uleb128 0x19 # (DW_FORM_flag_present) 529 .uleb128 0x1 # (DW_AT_sibling) 530 .uleb128 0x13 # (DW_FORM_ref4) 531 .byte 0 532 .byte 0 533 .uleb128 0xf # (abbrev code) 534 .uleb128 0x34 # (TAG: DW_TAG_variable) 535 .byte 0 # DW_children_no 536 .uleb128 0x3 # (DW_AT_name) 537 .uleb128 0x8 # (DW_FORM_string) 538 .uleb128 0x3a # (DW_AT_decl_file) 539 .uleb128 0xb # (DW_FORM_data1) 540 .uleb128 0x3b # (DW_AT_decl_line) 541 .uleb128 0xb # (DW_FORM_data1) 542 .uleb128 0x49 # (DW_AT_type) 543 .uleb128 0x13 # (DW_FORM_ref4) 544 .uleb128 0x2 # (DW_AT_location) 545 .uleb128 0x18 # (DW_FORM_exprloc) 546 .byte 0 547 .byte 0 548 .uleb128 0x10 # (abbrev code) 549 .uleb128 0x35 # (TAG: DW_TAG_volatile_type) 550 .byte 0 # DW_children_no 551 .uleb128 0x49 # (DW_AT_type) 552 .uleb128 0x13 # (DW_FORM_ref4) 553 .byte 0 554 .byte 0 555 .byte 0 556 .section .debug_loc,"",@progbits 557.Ldebug_loc0: 558.LLST0: 559 .quad .LVL1 # Location list begin address (*.LLST0) 560 .quad .LVL2-1 # Location list end address (*.LLST0) 561 .value 0x1 # Location expression size 562 .byte 0x55 # DW_OP_reg5 563 .quad .LVL2-1 # Location list begin address (*.LLST0) 564 .quad .LVL7 # Location list end address (*.LLST0) 565 .value 0x1 # Location expression size 566 .byte 0x53 # DW_OP_reg3 567 .quad .LVL7 # Location list begin address (*.LLST0) 568 .quad .LFE2 # Location list end address (*.LLST0) 569 .value 0x1 # Location expression size 570 .byte 0x50 # DW_OP_reg0 571 .quad 0 # Location list terminator begin (*.LLST0) 572 .quad 0 # Location list terminator end (*.LLST0) 573.LLST1: 574 .quad .LVL1 # Location list begin address (*.LLST1) 575 .quad .LVL2-1 # Location list end address (*.LLST1) 576 .value 0x1 # Location expression size 577 .byte 0x54 # DW_OP_reg4 578 .quad .LVL2-1 # Location list begin address (*.LLST1) 579 .quad .LFE2 # Location list end address (*.LLST1) 580 .value 0x4 # Location expression size 581 .byte 0xf3 # DW_OP_GNU_entry_value 582 .uleb128 0x1 583 .byte 0x54 # DW_OP_reg4 584 .byte 0x9f # DW_OP_stack_value 585 .quad 0 # Location list terminator begin (*.LLST1) 586 .quad 0 # Location list terminator end (*.LLST1) 587.LLST2: 588 .quad .LVL1 # Location list begin address (*.LLST2) 589 .quad .LVL2-1 # Location list end address (*.LLST2) 590 .value 0x1 # Location expression size 591 .byte 0x54 # DW_OP_reg4 592 .quad .LVL2-1 # Location list begin address (*.LLST2) 593 .quad .LVL3 # Location list end address (*.LLST2) 594 .value 0x4 # Location expression size 595 .byte 0xf3 # DW_OP_GNU_entry_value 596 .uleb128 0x1 597 .byte 0x54 # DW_OP_reg4 598 .byte 0x9f # DW_OP_stack_value 599 .quad .LVL3 # Location list begin address (*.LLST2) 600 .quad .LVL4 # Location list end address (*.LLST2) 601 .value 0x1 # Location expression size 602 .byte 0x50 # DW_OP_reg0 603 .quad .LVL4 # Location list begin address (*.LLST2) 604 .quad .LVL5 # Location list end address (*.LLST2) 605 .value 0x6 # Location expression size 606 .byte 0x70 # DW_OP_breg0 607 .sleb128 0 608 .byte 0x75 # DW_OP_breg5 609 .sleb128 0 610 .byte 0x1e # DW_OP_mul 611 .byte 0x9f # DW_OP_stack_value 612 .quad .LVL5 # Location list begin address (*.LLST2) 613 .quad .LVL6-1 # Location list end address (*.LLST2) 614 .value 0x1 # Location expression size 615 .byte 0x50 # DW_OP_reg0 616 .quad .LVL6-1 # Location list begin address (*.LLST2) 617 .quad .LVL6 # Location list end address (*.LLST2) 618 .value 0xb # Location expression size 619 .byte 0x73 # DW_OP_breg3 620 .sleb128 -2 621 .byte 0x73 # DW_OP_breg3 622 .sleb128 -2 623 .byte 0x73 # DW_OP_breg3 624 .sleb128 -2 625 .byte 0x1e # DW_OP_mul 626 .byte 0x23 # DW_OP_plus_uconst 627 .uleb128 0x1 628 .byte 0x1e # DW_OP_mul 629 .byte 0x9f # DW_OP_stack_value 630 .quad 0 # Location list terminator begin (*.LLST2) 631 .quad 0 # Location list terminator end (*.LLST2) 632 .section .debug_aranges,"",@progbits 633 .long 0x3c # Length of Address Ranges Info 634 .value 0x2 # DWARF Version 635 .long .Ldebug_info0 # Offset of Compilation Unit Info 636 .byte 0x8 # Size of Address 637 .byte 0 # Size of Segment Descriptor 638 .value 0 # Pad to 16 byte boundary 639 .value 0 640 .quad .Ltext0 # Address 641 .quad .Letext0-.Ltext0 # Length 642 .quad .LFB3 # Address 643 .quad .LFE3-.LFB3 # Length 644 .quad 0 645 .quad 0 646 .section .debug_ranges,"",@progbits 647.Ldebug_ranges0: 648 .quad .LBB4 # Offset 0 649 .quad .LBE4 650 .quad .LBB7 651 .quad .LBE7 652 .quad 0 653 .quad 0 654 .quad .Ltext0 # Offset 0x30 655 .quad .Letext0 656 .quad .LFB3 # Offset 0x40 657 .quad .LFE3 658 .quad 0 659 .quad 0 660 .section .debug_line,"",@progbits 661.Ldebug_line0: 662 .section .debug_str,"MS",@progbits,1 663.LASF0: 664 .string "GNU C 4.8.0 20121005+patches (experimental) -mtune=generic -march=x86-64 -g -O2" 665.LASF1: 666 .string "gdb.arch/amd64-entry-value-inline.c" 667.LASF2: 668 .string "" 669.LASF3: 670 .string "main" 671 .ident "GCC: (GNU) 4.8.0 20121005 (experimental)" 672 .section .note.GNU-stack,"",@progbits 673