Index: gdb/testsuite/gdb.arch/amd64-entry-value-inline.S |
diff --git a/gdb/testsuite/gdb.arch/amd64-entry-value-inline.S b/gdb/testsuite/gdb.arch/amd64-entry-value-inline.S |
new file mode 100644 |
index 0000000000000000000000000000000000000000..1e30008dba0ac43cafc9f3f10072d301bc29bdf8 |
--- /dev/null |
+++ b/gdb/testsuite/gdb.arch/amd64-entry-value-inline.S |
@@ -0,0 +1,672 @@ |
+/* This testcase is part of GDB, the GNU debugger. |
+ |
+ Copyright 2012-2013 Free Software Foundation, Inc. |
+ |
+ This program is free software; you can redistribute it and/or modify |
+ it under the terms of the GNU General Public License as published by |
+ the Free Software Foundation; either version 3 of the License, or |
+ (at your option) any later version. |
+ |
+ This program is distributed in the hope that it will be useful, |
+ but WITHOUT ANY WARRANTY; without even the implied warranty of |
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
+ GNU General Public License for more details. |
+ |
+ You should have received a copy of the GNU General Public License |
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
+ |
+/* This file is compiled from gdb.arch/amd64-entry-value-inline.c |
+ using -g -dA -S -O2. */ |
+ |
+ .file "amd64-entry-value-inline.c" |
+ .text |
+.Ltext0: |
+ .p2align 4,,15 |
+ .type fn1, @function |
+fn1: |
+.LFB0: |
+ .file 1 "gdb.arch/amd64-entry-value-inline.c" |
+ # gdb.arch/amd64-entry-value-inline.c:22 |
+ .loc 1 22 0 |
+ .cfi_startproc |
+.LVL0: |
+# BLOCK 2 freq:10000 seq:0 |
+# PRED: ENTRY [100.0%] (FALLTHRU) |
+ # gdb.arch/amd64-entry-value-inline.c:23 |
+ .loc 1 23 0 |
+ movl v(%rip), %eax |
+ addl $1, %eax |
+ movl %eax, v(%rip) |
+# SUCC: EXIT [100.0%] |
+ ret |
+ .cfi_endproc |
+.LFE0: |
+ .size fn1, .-fn1 |
+ .p2align 4,,15 |
+ .globl fn3 |
+ .type fn3, @function |
+fn3: |
+.LFB2: |
+ # gdb.arch/amd64-entry-value-inline.c:41 |
+ .loc 1 41 0 |
+ .cfi_startproc |
+.LVL1: |
+# BLOCK 2 freq:10000 seq:0 |
+# PRED: ENTRY [100.0%] (FALLTHRU) |
+.LBB4: |
+.LBB5: |
+ # gdb.arch/amd64-entry-value-inline.c:29 |
+ .loc 1 29 0 |
+ testl %esi, %esi |
+.LBE5: |
+.LBE4: |
+ # gdb.arch/amd64-entry-value-inline.c:41 |
+ .loc 1 41 0 |
+ pushq %rbx |
+ .cfi_def_cfa_offset 16 |
+ .cfi_offset 3, -16 |
+ # gdb.arch/amd64-entry-value-inline.c:41 |
+ .loc 1 41 0 |
+ movl %edi, %ebx |
+.LBB7: |
+.LBB6: |
+# SUCC: 3 [39.0%] (FALLTHRU,CAN_FALLTHRU) 4 [61.0%] (CAN_FALLTHRU) |
+ # gdb.arch/amd64-entry-value-inline.c:29 |
+ .loc 1 29 0 |
+ je .L3 |
+# BLOCK 3 freq:3898 seq:1 |
+# PRED: 2 [39.0%] (FALLTHRU,CAN_FALLTHRU) |
+ # gdb.arch/amd64-entry-value-inline.c:31 |
+ .loc 1 31 0 |
+ call fn1 |
+.LVL2: |
+ # gdb.arch/amd64-entry-value-inline.c:32 |
+ .loc 1 32 0 |
+ leal -2(%rbx), %eax |
+.LVL3: |
+ # gdb.arch/amd64-entry-value-inline.c:33 |
+ .loc 1 33 0 |
+ movl %eax, %edi |
+ imull %eax, %edi |
+ addl $1, %edi |
+.LVL4: |
+ imull %edi, %eax |
+.LVL5: |
+ # gdb.arch/amd64-entry-value-inline.c:34 |
+ .loc 1 34 0 |
+ leal (%rbx,%rax), %edi |
+ call fn1 |
+.LVL6: |
+# SUCC: 4 [100.0%] (FALLTHRU,CAN_FALLTHRU) |
+# BLOCK 4 freq:10000 seq:2 |
+# PRED: 2 [61.0%] (CAN_FALLTHRU) 3 [100.0%] (FALLTHRU,CAN_FALLTHRU) |
+.L3: |
+.LBE6: |
+.LBE7: |
+ # gdb.arch/amd64-entry-value-inline.c:43 |
+ .loc 1 43 0 |
+ movl %ebx, %eax |
+ popq %rbx |
+ .cfi_def_cfa_offset 8 |
+.LVL7: |
+# SUCC: EXIT [100.0%] |
+ ret |
+ .cfi_endproc |
+.LFE2: |
+ .size fn3, .-fn3 |
+ .section .text.startup,"ax",@progbits |
+ .p2align 4,,15 |
+ .globl main |
+ .type main, @function |
+main: |
+.LFB3: |
+ # gdb.arch/amd64-entry-value-inline.c:47 |
+ .loc 1 47 0 |
+ .cfi_startproc |
+# BLOCK 2 freq:10000 seq:0 |
+# PRED: ENTRY [100.0%] (FALLTHRU) |
+ # gdb.arch/amd64-entry-value-inline.c:48 |
+ .loc 1 48 0 |
+ movl $25, %esi |
+ movl $6, %edi |
+ call fn3 |
+.LVL8: |
+ # gdb.arch/amd64-entry-value-inline.c:50 |
+ .loc 1 50 0 |
+ xorl %eax, %eax |
+# SUCC: EXIT [100.0%] |
+ ret |
+ .cfi_endproc |
+.LFE3: |
+ .size main, .-main |
+ .local v |
+ .comm v,4,4 |
+ .text |
+.Letext0: |
+ .section .debug_info,"",@progbits |
+.Ldebug_info0: |
+ .long 0x164 # Length of Compilation Unit Info |
+ .value 0x4 # DWARF version number |
+ .long .Ldebug_abbrev0 # Offset Into Abbrev. Section |
+ .byte 0x8 # Pointer Size (in bytes) |
+ .uleb128 0x1 # (DIE (0xb) DW_TAG_compile_unit) |
+ .long .LASF0 # DW_AT_producer: "GNU C 4.8.0 20121005 (experimental) -mtune=generic -march=x86-64 -g -O2" |
+ .byte 0x1 # DW_AT_language |
+ .long .LASF1 # DW_AT_name: "gdb.arch/amd64-entry-value-inline.c" |
+ .long .LASF2 # DW_AT_comp_dir: "" |
+ .long .Ldebug_ranges0+0x30 # DW_AT_ranges |
+ .quad 0 # DW_AT_low_pc |
+ .long .Ldebug_line0 # DW_AT_stmt_list |
+ .uleb128 0x2 # (DIE (0x29) DW_TAG_subprogram) |
+ .ascii "fn1\0" # DW_AT_name |
+ .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) |
+ .byte 0x15 # DW_AT_decl_line |
+ # DW_AT_prototyped |
+ .quad .LFB0 # DW_AT_low_pc |
+ .quad .LFE0-.LFB0 # DW_AT_high_pc |
+ .uleb128 0x1 # DW_AT_frame_base |
+ .byte 0x9c # DW_OP_call_frame_cfa |
+ # DW_AT_GNU_all_call_sites |
+ .long 0x52 # DW_AT_sibling |
+ .uleb128 0x3 # (DIE (0x46) DW_TAG_formal_parameter) |
+ .ascii "x\0" # DW_AT_name |
+ .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) |
+ .byte 0x15 # DW_AT_decl_line |
+ .long 0x52 # DW_AT_type |
+ .uleb128 0x1 # DW_AT_location |
+ .byte 0x55 # DW_OP_reg5 |
+ .byte 0 # end of children of DIE 0x29 |
+ .uleb128 0x4 # (DIE (0x52) DW_TAG_base_type) |
+ .byte 0x4 # DW_AT_byte_size |
+ .byte 0x5 # DW_AT_encoding |
+ .ascii "int\0" # DW_AT_name |
+ .uleb128 0x5 # (DIE (0x59) DW_TAG_subprogram) |
+ .ascii "fn2\0" # DW_AT_name |
+ .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) |
+ .byte 0x1b # DW_AT_decl_line |
+ # DW_AT_prototyped |
+ .long 0x52 # DW_AT_type |
+ .byte 0x1 # DW_AT_inline |
+ .long 0x7c # DW_AT_sibling |
+ .uleb128 0x6 # (DIE (0x69) DW_TAG_formal_parameter) |
+ .ascii "x\0" # DW_AT_name |
+ .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) |
+ .byte 0x1b # DW_AT_decl_line |
+ .long 0x52 # DW_AT_type |
+ .uleb128 0x6 # (DIE (0x72) DW_TAG_formal_parameter) |
+ .ascii "y\0" # DW_AT_name |
+ .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) |
+ .byte 0x1b # DW_AT_decl_line |
+ .long 0x52 # DW_AT_type |
+ .byte 0 # end of children of DIE 0x59 |
+ .uleb128 0x7 # (DIE (0x7c) DW_TAG_subprogram) |
+ # DW_AT_external |
+ .ascii "fn3\0" # DW_AT_name |
+ .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) |
+ .byte 0x28 # DW_AT_decl_line |
+ # DW_AT_prototyped |
+ .long 0x52 # DW_AT_type |
+ .quad .LFB2 # DW_AT_low_pc |
+ .quad .LFE2-.LFB2 # DW_AT_high_pc |
+ .uleb128 0x1 # DW_AT_frame_base |
+ .byte 0x9c # DW_OP_call_frame_cfa |
+ # DW_AT_GNU_all_call_sites |
+ .long 0x115 # DW_AT_sibling |
+ .uleb128 0x8 # (DIE (0x9d) DW_TAG_formal_parameter) |
+ .ascii "x\0" # DW_AT_name |
+ .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) |
+ .byte 0x28 # DW_AT_decl_line |
+ .long 0x52 # DW_AT_type |
+ .long .LLST0 # DW_AT_location |
+ .uleb128 0x8 # (DIE (0xaa) DW_TAG_formal_parameter) |
+ .ascii "y\0" # DW_AT_name |
+ .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) |
+ .byte 0x28 # DW_AT_decl_line |
+ .long 0x52 # DW_AT_type |
+ .long .LLST1 # DW_AT_location |
+ .uleb128 0x9 # (DIE (0xb7) DW_TAG_inlined_subroutine) |
+ .long 0x59 # DW_AT_abstract_origin |
+ .quad .LBB4 # DW_AT_entry_pc |
+ .long .Ldebug_ranges0+0 # DW_AT_ranges |
+ .byte 0x1 # DW_AT_call_file (gdb.arch/amd64-entry-value-inline.c) |
+ .byte 0x2a # DW_AT_call_line |
+ .uleb128 0xa # (DIE (0xca) DW_TAG_formal_parameter) |
+ .long 0x72 # DW_AT_abstract_origin |
+ .long .LLST2 # DW_AT_location |
+ .uleb128 0xa # (DIE (0xd3) DW_TAG_formal_parameter) |
+ .long 0x69 # DW_AT_abstract_origin |
+ .long .LLST0 # DW_AT_location |
+ .uleb128 0xb # (DIE (0xdc) DW_TAG_GNU_call_site) |
+ .quad .LVL2 # DW_AT_low_pc |
+ .long 0x29 # DW_AT_abstract_origin |
+ .long 0xf4 # DW_AT_sibling |
+ .uleb128 0xc # (DIE (0xed) DW_TAG_GNU_call_site_parameter) |
+ .uleb128 0x1 # DW_AT_location |
+ .byte 0x55 # DW_OP_reg5 |
+ .uleb128 0x2 # DW_AT_GNU_call_site_value |
+ .byte 0x73 # DW_OP_breg3 |
+ .sleb128 0 |
+ .byte 0 # end of children of DIE 0xdc |
+ .uleb128 0xd # (DIE (0xf4) DW_TAG_GNU_call_site) |
+ .quad .LVL6 # DW_AT_low_pc |
+ .long 0x29 # DW_AT_abstract_origin |
+ .uleb128 0xc # (DIE (0x101) DW_TAG_GNU_call_site_parameter) |
+ .uleb128 0x1 # DW_AT_location |
+ .byte 0x55 # DW_OP_reg5 |
+ .uleb128 0xd # DW_AT_GNU_call_site_value |
+ .byte 0x73 # DW_OP_breg3 |
+ .sleb128 -2 |
+ .byte 0x73 # DW_OP_breg3 |
+ .sleb128 -2 |
+ .byte 0x73 # DW_OP_breg3 |
+ .sleb128 -2 |
+ .byte 0x1e # DW_OP_mul |
+ .byte 0x23 # DW_OP_plus_uconst |
+ .uleb128 0x1 |
+ .byte 0x1e # DW_OP_mul |
+ .byte 0x73 # DW_OP_breg3 |
+ .sleb128 0 |
+ .byte 0x22 # DW_OP_plus |
+ .byte 0 # end of children of DIE 0xf4 |
+ .byte 0 # end of children of DIE 0xb7 |
+ .byte 0 # end of children of DIE 0x7c |
+ .uleb128 0xe # (DIE (0x115) DW_TAG_subprogram) |
+ # DW_AT_external |
+ .long .LASF3 # DW_AT_name: "main" |
+ .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) |
+ .byte 0x2e # DW_AT_decl_line |
+ .long 0x52 # DW_AT_type |
+ .quad .LFB3 # DW_AT_low_pc |
+ .quad .LFE3-.LFB3 # DW_AT_high_pc |
+ .uleb128 0x1 # DW_AT_frame_base |
+ .byte 0x9c # DW_OP_call_frame_cfa |
+ # DW_AT_GNU_all_call_sites |
+ .long 0x14f # DW_AT_sibling |
+ .uleb128 0xd # (DIE (0x136) DW_TAG_GNU_call_site) |
+ .quad .LVL8 # DW_AT_low_pc |
+ .long 0x7c # DW_AT_abstract_origin |
+ .uleb128 0xc # (DIE (0x143) DW_TAG_GNU_call_site_parameter) |
+ .uleb128 0x1 # DW_AT_location |
+ .byte 0x55 # DW_OP_reg5 |
+ .uleb128 0x1 # DW_AT_GNU_call_site_value |
+ .byte 0x36 # DW_OP_lit6 |
+ .uleb128 0xc # (DIE (0x148) DW_TAG_GNU_call_site_parameter) |
+ .uleb128 0x1 # DW_AT_location |
+ .byte 0x54 # DW_OP_reg4 |
+ .uleb128 0x1 # DW_AT_GNU_call_site_value |
+ .byte 0x49 # DW_OP_lit25 |
+ .byte 0 # end of children of DIE 0x136 |
+ .byte 0 # end of children of DIE 0x115 |
+ .uleb128 0xf # (DIE (0x14f) DW_TAG_variable) |
+ .ascii "v\0" # DW_AT_name |
+ .byte 0x1 # DW_AT_decl_file (gdb.arch/amd64-entry-value-inline.c) |
+ .byte 0x12 # DW_AT_decl_line |
+ .long 0x162 # DW_AT_type |
+ .uleb128 0x9 # DW_AT_location |
+ .byte 0x3 # DW_OP_addr |
+ .quad v |
+ .uleb128 0x10 # (DIE (0x162) DW_TAG_volatile_type) |
+ .long 0x52 # DW_AT_type |
+ .byte 0 # end of children of DIE 0xb |
+ .section .debug_abbrev,"",@progbits |
+.Ldebug_abbrev0: |
+ .uleb128 0x1 # (abbrev code) |
+ .uleb128 0x11 # (TAG: DW_TAG_compile_unit) |
+ .byte 0x1 # DW_children_yes |
+ .uleb128 0x25 # (DW_AT_producer) |
+ .uleb128 0xe # (DW_FORM_strp) |
+ .uleb128 0x13 # (DW_AT_language) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x3 # (DW_AT_name) |
+ .uleb128 0xe # (DW_FORM_strp) |
+ .uleb128 0x1b # (DW_AT_comp_dir) |
+ .uleb128 0xe # (DW_FORM_strp) |
+ .uleb128 0x55 # (DW_AT_ranges) |
+ .uleb128 0x17 # (DW_FORM_sec_offset) |
+ .uleb128 0x11 # (DW_AT_low_pc) |
+ .uleb128 0x1 # (DW_FORM_addr) |
+ .uleb128 0x10 # (DW_AT_stmt_list) |
+ .uleb128 0x17 # (DW_FORM_sec_offset) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x2 # (abbrev code) |
+ .uleb128 0x2e # (TAG: DW_TAG_subprogram) |
+ .byte 0x1 # DW_children_yes |
+ .uleb128 0x3 # (DW_AT_name) |
+ .uleb128 0x8 # (DW_FORM_string) |
+ .uleb128 0x3a # (DW_AT_decl_file) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x3b # (DW_AT_decl_line) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x27 # (DW_AT_prototyped) |
+ .uleb128 0x19 # (DW_FORM_flag_present) |
+ .uleb128 0x11 # (DW_AT_low_pc) |
+ .uleb128 0x1 # (DW_FORM_addr) |
+ .uleb128 0x12 # (DW_AT_high_pc) |
+ .uleb128 0x7 # (DW_FORM_data8) |
+ .uleb128 0x40 # (DW_AT_frame_base) |
+ .uleb128 0x18 # (DW_FORM_exprloc) |
+ .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) |
+ .uleb128 0x19 # (DW_FORM_flag_present) |
+ .uleb128 0x1 # (DW_AT_sibling) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x3 # (abbrev code) |
+ .uleb128 0x5 # (TAG: DW_TAG_formal_parameter) |
+ .byte 0 # DW_children_no |
+ .uleb128 0x3 # (DW_AT_name) |
+ .uleb128 0x8 # (DW_FORM_string) |
+ .uleb128 0x3a # (DW_AT_decl_file) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x3b # (DW_AT_decl_line) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x49 # (DW_AT_type) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .uleb128 0x2 # (DW_AT_location) |
+ .uleb128 0x18 # (DW_FORM_exprloc) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x4 # (abbrev code) |
+ .uleb128 0x24 # (TAG: DW_TAG_base_type) |
+ .byte 0 # DW_children_no |
+ .uleb128 0xb # (DW_AT_byte_size) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x3e # (DW_AT_encoding) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x3 # (DW_AT_name) |
+ .uleb128 0x8 # (DW_FORM_string) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x5 # (abbrev code) |
+ .uleb128 0x2e # (TAG: DW_TAG_subprogram) |
+ .byte 0x1 # DW_children_yes |
+ .uleb128 0x3 # (DW_AT_name) |
+ .uleb128 0x8 # (DW_FORM_string) |
+ .uleb128 0x3a # (DW_AT_decl_file) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x3b # (DW_AT_decl_line) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x27 # (DW_AT_prototyped) |
+ .uleb128 0x19 # (DW_FORM_flag_present) |
+ .uleb128 0x49 # (DW_AT_type) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .uleb128 0x20 # (DW_AT_inline) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x1 # (DW_AT_sibling) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x6 # (abbrev code) |
+ .uleb128 0x5 # (TAG: DW_TAG_formal_parameter) |
+ .byte 0 # DW_children_no |
+ .uleb128 0x3 # (DW_AT_name) |
+ .uleb128 0x8 # (DW_FORM_string) |
+ .uleb128 0x3a # (DW_AT_decl_file) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x3b # (DW_AT_decl_line) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x49 # (DW_AT_type) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x7 # (abbrev code) |
+ .uleb128 0x2e # (TAG: DW_TAG_subprogram) |
+ .byte 0x1 # DW_children_yes |
+ .uleb128 0x3f # (DW_AT_external) |
+ .uleb128 0x19 # (DW_FORM_flag_present) |
+ .uleb128 0x3 # (DW_AT_name) |
+ .uleb128 0x8 # (DW_FORM_string) |
+ .uleb128 0x3a # (DW_AT_decl_file) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x3b # (DW_AT_decl_line) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x27 # (DW_AT_prototyped) |
+ .uleb128 0x19 # (DW_FORM_flag_present) |
+ .uleb128 0x49 # (DW_AT_type) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .uleb128 0x11 # (DW_AT_low_pc) |
+ .uleb128 0x1 # (DW_FORM_addr) |
+ .uleb128 0x12 # (DW_AT_high_pc) |
+ .uleb128 0x7 # (DW_FORM_data8) |
+ .uleb128 0x40 # (DW_AT_frame_base) |
+ .uleb128 0x18 # (DW_FORM_exprloc) |
+ .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) |
+ .uleb128 0x19 # (DW_FORM_flag_present) |
+ .uleb128 0x1 # (DW_AT_sibling) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x8 # (abbrev code) |
+ .uleb128 0x5 # (TAG: DW_TAG_formal_parameter) |
+ .byte 0 # DW_children_no |
+ .uleb128 0x3 # (DW_AT_name) |
+ .uleb128 0x8 # (DW_FORM_string) |
+ .uleb128 0x3a # (DW_AT_decl_file) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x3b # (DW_AT_decl_line) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x49 # (DW_AT_type) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .uleb128 0x2 # (DW_AT_location) |
+ .uleb128 0x17 # (DW_FORM_sec_offset) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x9 # (abbrev code) |
+ .uleb128 0x1d # (TAG: DW_TAG_inlined_subroutine) |
+ .byte 0x1 # DW_children_yes |
+ .uleb128 0x31 # (DW_AT_abstract_origin) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .uleb128 0x52 # (DW_AT_entry_pc) |
+ .uleb128 0x1 # (DW_FORM_addr) |
+ .uleb128 0x55 # (DW_AT_ranges) |
+ .uleb128 0x17 # (DW_FORM_sec_offset) |
+ .uleb128 0x58 # (DW_AT_call_file) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x59 # (DW_AT_call_line) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0xa # (abbrev code) |
+ .uleb128 0x5 # (TAG: DW_TAG_formal_parameter) |
+ .byte 0 # DW_children_no |
+ .uleb128 0x31 # (DW_AT_abstract_origin) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .uleb128 0x2 # (DW_AT_location) |
+ .uleb128 0x17 # (DW_FORM_sec_offset) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0xb # (abbrev code) |
+ .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site) |
+ .byte 0x1 # DW_children_yes |
+ .uleb128 0x11 # (DW_AT_low_pc) |
+ .uleb128 0x1 # (DW_FORM_addr) |
+ .uleb128 0x31 # (DW_AT_abstract_origin) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .uleb128 0x1 # (DW_AT_sibling) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0xc # (abbrev code) |
+ .uleb128 0x410a # (TAG: DW_TAG_GNU_call_site_parameter) |
+ .byte 0 # DW_children_no |
+ .uleb128 0x2 # (DW_AT_location) |
+ .uleb128 0x18 # (DW_FORM_exprloc) |
+ .uleb128 0x2111 # (DW_AT_GNU_call_site_value) |
+ .uleb128 0x18 # (DW_FORM_exprloc) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0xd # (abbrev code) |
+ .uleb128 0x4109 # (TAG: DW_TAG_GNU_call_site) |
+ .byte 0x1 # DW_children_yes |
+ .uleb128 0x11 # (DW_AT_low_pc) |
+ .uleb128 0x1 # (DW_FORM_addr) |
+ .uleb128 0x31 # (DW_AT_abstract_origin) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0xe # (abbrev code) |
+ .uleb128 0x2e # (TAG: DW_TAG_subprogram) |
+ .byte 0x1 # DW_children_yes |
+ .uleb128 0x3f # (DW_AT_external) |
+ .uleb128 0x19 # (DW_FORM_flag_present) |
+ .uleb128 0x3 # (DW_AT_name) |
+ .uleb128 0xe # (DW_FORM_strp) |
+ .uleb128 0x3a # (DW_AT_decl_file) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x3b # (DW_AT_decl_line) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x49 # (DW_AT_type) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .uleb128 0x11 # (DW_AT_low_pc) |
+ .uleb128 0x1 # (DW_FORM_addr) |
+ .uleb128 0x12 # (DW_AT_high_pc) |
+ .uleb128 0x7 # (DW_FORM_data8) |
+ .uleb128 0x40 # (DW_AT_frame_base) |
+ .uleb128 0x18 # (DW_FORM_exprloc) |
+ .uleb128 0x2117 # (DW_AT_GNU_all_call_sites) |
+ .uleb128 0x19 # (DW_FORM_flag_present) |
+ .uleb128 0x1 # (DW_AT_sibling) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0xf # (abbrev code) |
+ .uleb128 0x34 # (TAG: DW_TAG_variable) |
+ .byte 0 # DW_children_no |
+ .uleb128 0x3 # (DW_AT_name) |
+ .uleb128 0x8 # (DW_FORM_string) |
+ .uleb128 0x3a # (DW_AT_decl_file) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x3b # (DW_AT_decl_line) |
+ .uleb128 0xb # (DW_FORM_data1) |
+ .uleb128 0x49 # (DW_AT_type) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .uleb128 0x2 # (DW_AT_location) |
+ .uleb128 0x18 # (DW_FORM_exprloc) |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x10 # (abbrev code) |
+ .uleb128 0x35 # (TAG: DW_TAG_volatile_type) |
+ .byte 0 # DW_children_no |
+ .uleb128 0x49 # (DW_AT_type) |
+ .uleb128 0x13 # (DW_FORM_ref4) |
+ .byte 0 |
+ .byte 0 |
+ .byte 0 |
+ .section .debug_loc,"",@progbits |
+.Ldebug_loc0: |
+.LLST0: |
+ .quad .LVL1 # Location list begin address (*.LLST0) |
+ .quad .LVL2-1 # Location list end address (*.LLST0) |
+ .value 0x1 # Location expression size |
+ .byte 0x55 # DW_OP_reg5 |
+ .quad .LVL2-1 # Location list begin address (*.LLST0) |
+ .quad .LVL7 # Location list end address (*.LLST0) |
+ .value 0x1 # Location expression size |
+ .byte 0x53 # DW_OP_reg3 |
+ .quad .LVL7 # Location list begin address (*.LLST0) |
+ .quad .LFE2 # Location list end address (*.LLST0) |
+ .value 0x1 # Location expression size |
+ .byte 0x50 # DW_OP_reg0 |
+ .quad 0 # Location list terminator begin (*.LLST0) |
+ .quad 0 # Location list terminator end (*.LLST0) |
+.LLST1: |
+ .quad .LVL1 # Location list begin address (*.LLST1) |
+ .quad .LVL2-1 # Location list end address (*.LLST1) |
+ .value 0x1 # Location expression size |
+ .byte 0x54 # DW_OP_reg4 |
+ .quad .LVL2-1 # Location list begin address (*.LLST1) |
+ .quad .LFE2 # Location list end address (*.LLST1) |
+ .value 0x4 # Location expression size |
+ .byte 0xf3 # DW_OP_GNU_entry_value |
+ .uleb128 0x1 |
+ .byte 0x54 # DW_OP_reg4 |
+ .byte 0x9f # DW_OP_stack_value |
+ .quad 0 # Location list terminator begin (*.LLST1) |
+ .quad 0 # Location list terminator end (*.LLST1) |
+.LLST2: |
+ .quad .LVL1 # Location list begin address (*.LLST2) |
+ .quad .LVL2-1 # Location list end address (*.LLST2) |
+ .value 0x1 # Location expression size |
+ .byte 0x54 # DW_OP_reg4 |
+ .quad .LVL2-1 # Location list begin address (*.LLST2) |
+ .quad .LVL3 # Location list end address (*.LLST2) |
+ .value 0x4 # Location expression size |
+ .byte 0xf3 # DW_OP_GNU_entry_value |
+ .uleb128 0x1 |
+ .byte 0x54 # DW_OP_reg4 |
+ .byte 0x9f # DW_OP_stack_value |
+ .quad .LVL3 # Location list begin address (*.LLST2) |
+ .quad .LVL4 # Location list end address (*.LLST2) |
+ .value 0x1 # Location expression size |
+ .byte 0x50 # DW_OP_reg0 |
+ .quad .LVL4 # Location list begin address (*.LLST2) |
+ .quad .LVL5 # Location list end address (*.LLST2) |
+ .value 0x6 # Location expression size |
+ .byte 0x70 # DW_OP_breg0 |
+ .sleb128 0 |
+ .byte 0x75 # DW_OP_breg5 |
+ .sleb128 0 |
+ .byte 0x1e # DW_OP_mul |
+ .byte 0x9f # DW_OP_stack_value |
+ .quad .LVL5 # Location list begin address (*.LLST2) |
+ .quad .LVL6-1 # Location list end address (*.LLST2) |
+ .value 0x1 # Location expression size |
+ .byte 0x50 # DW_OP_reg0 |
+ .quad .LVL6-1 # Location list begin address (*.LLST2) |
+ .quad .LVL6 # Location list end address (*.LLST2) |
+ .value 0xb # Location expression size |
+ .byte 0x73 # DW_OP_breg3 |
+ .sleb128 -2 |
+ .byte 0x73 # DW_OP_breg3 |
+ .sleb128 -2 |
+ .byte 0x73 # DW_OP_breg3 |
+ .sleb128 -2 |
+ .byte 0x1e # DW_OP_mul |
+ .byte 0x23 # DW_OP_plus_uconst |
+ .uleb128 0x1 |
+ .byte 0x1e # DW_OP_mul |
+ .byte 0x9f # DW_OP_stack_value |
+ .quad 0 # Location list terminator begin (*.LLST2) |
+ .quad 0 # Location list terminator end (*.LLST2) |
+ .section .debug_aranges,"",@progbits |
+ .long 0x3c # Length of Address Ranges Info |
+ .value 0x2 # DWARF Version |
+ .long .Ldebug_info0 # Offset of Compilation Unit Info |
+ .byte 0x8 # Size of Address |
+ .byte 0 # Size of Segment Descriptor |
+ .value 0 # Pad to 16 byte boundary |
+ .value 0 |
+ .quad .Ltext0 # Address |
+ .quad .Letext0-.Ltext0 # Length |
+ .quad .LFB3 # Address |
+ .quad .LFE3-.LFB3 # Length |
+ .quad 0 |
+ .quad 0 |
+ .section .debug_ranges,"",@progbits |
+.Ldebug_ranges0: |
+ .quad .LBB4 # Offset 0 |
+ .quad .LBE4 |
+ .quad .LBB7 |
+ .quad .LBE7 |
+ .quad 0 |
+ .quad 0 |
+ .quad .Ltext0 # Offset 0x30 |
+ .quad .Letext0 |
+ .quad .LFB3 # Offset 0x40 |
+ .quad .LFE3 |
+ .quad 0 |
+ .quad 0 |
+ .section .debug_line,"",@progbits |
+.Ldebug_line0: |
+ .section .debug_str,"MS",@progbits,1 |
+.LASF0: |
+ .string "GNU C 4.8.0 20121005+patches (experimental) -mtune=generic -march=x86-64 -g -O2" |
+.LASF1: |
+ .string "gdb.arch/amd64-entry-value-inline.c" |
+.LASF2: |
+ .string "" |
+.LASF3: |
+ .string "main" |
+ .ident "GCC: (GNU) 4.8.0 20121005 (experimental)" |
+ .section .note.GNU-stack,"",@progbits |