Index: gdb/testsuite/gdb.dwarf2/pieces-optimized-out.S |
diff --git a/gdb/testsuite/gdb.dwarf2/pieces-optimized-out.S b/gdb/testsuite/gdb.dwarf2/pieces-optimized-out.S |
new file mode 100644 |
index 0000000000000000000000000000000000000000..06aa707ae8a464d1ab23bdff97852e1d044bd254 |
--- /dev/null |
+++ b/gdb/testsuite/gdb.dwarf2/pieces-optimized-out.S |
@@ -0,0 +1,548 @@ |
+/* |
+ Copyright 2010-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 was compiled with gcc version 4.7.2 using: |
+ gcc -O3 -m32 -g -o pieces-optimized-out.S -S pieces-optimized-out.c |
+ The contents of this file are otherwise unmodified. */ |
+ |
+ .file "pieces-optimized-out.c" |
+ .text |
+.Ltext0: |
+ .p2align 4,,15 |
+ .globl foo |
+ .type foo, @function |
+foo: |
+.LFB0: |
+ .file 1 "pieces-optimized-out.c" |
+ .loc 1 33 0 |
+.LVL0: |
+ .loc 1 35 0 |
+ movl 4(%esp), %eax |
+ ret |
+.LFE0: |
+ .size foo, .-foo |
+ .section .text.startup,"ax",@progbits |
+ .p2align 4,,15 |
+ .globl main |
+ .type main, @function |
+main: |
+.LFB1: |
+ .loc 1 39 0 |
+.LVL1: |
+ subl $4, %esp |
+.LCFI0: |
+ .loc 1 44 0 |
+ movl $10, (%esp) |
+ call foo |
+.LVL2: |
+ .loc 1 46 0 |
+ addl $4, %esp |
+.LCFI1: |
+ .loc 1 45 0 |
+ addl $20, %eax |
+.LVL3: |
+ .loc 1 46 0 |
+ ret |
+.LFE1: |
+ .size main, .-main |
+ .section .debug_frame,"",@progbits |
+.Lframe0: |
+ .long .LECIE0-.LSCIE0 |
+.LSCIE0: |
+ .long 0xffffffff |
+ .byte 0x1 |
+ .string "" |
+ .uleb128 0x1 |
+ .sleb128 -4 |
+ .byte 0x8 |
+ .byte 0xc |
+ .uleb128 0x4 |
+ .uleb128 0x4 |
+ .byte 0x88 |
+ .uleb128 0x1 |
+ .align 4 |
+.LECIE0: |
+.LSFDE0: |
+ .long .LEFDE0-.LASFDE0 |
+.LASFDE0: |
+ .long .Lframe0 |
+ .long .LFB0 |
+ .long .LFE0-.LFB0 |
+ .align 4 |
+.LEFDE0: |
+.LSFDE2: |
+ .long .LEFDE2-.LASFDE2 |
+.LASFDE2: |
+ .long .Lframe0 |
+ .long .LFB1 |
+ .long .LFE1-.LFB1 |
+ .byte 0x4 |
+ .long .LCFI0-.LFB1 |
+ .byte 0xe |
+ .uleb128 0x8 |
+ .byte 0x4 |
+ .long .LCFI1-.LCFI0 |
+ .byte 0xe |
+ .uleb128 0x4 |
+ .align 4 |
+.LEFDE2: |
+ .section .eh_frame,"a",@progbits |
+.Lframe1: |
+ .long .LECIE1-.LSCIE1 |
+.LSCIE1: |
+ .long 0 |
+ .byte 0x1 |
+ .string "" |
+ .uleb128 0x1 |
+ .sleb128 -4 |
+ .byte 0x8 |
+ .byte 0xc |
+ .uleb128 0x4 |
+ .uleb128 0x4 |
+ .byte 0x88 |
+ .uleb128 0x1 |
+ .align 4 |
+.LECIE1: |
+.LSFDE5: |
+ .long .LEFDE5-.LASFDE5 |
+.LASFDE5: |
+ .long .LASFDE5-.Lframe1 |
+ .long .LFB0 |
+ .long .LFE0-.LFB0 |
+ .align 4 |
+.LEFDE5: |
+.LSFDE7: |
+ .long .LEFDE7-.LASFDE7 |
+.LASFDE7: |
+ .long .LASFDE7-.Lframe1 |
+ .long .LFB1 |
+ .long .LFE1-.LFB1 |
+ .byte 0x4 |
+ .long .LCFI0-.LFB1 |
+ .byte 0xe |
+ .uleb128 0x8 |
+ .byte 0x4 |
+ .long .LCFI1-.LCFI0 |
+ .byte 0xe |
+ .uleb128 0x4 |
+ .align 4 |
+.LEFDE7: |
+ .text |
+.Letext0: |
+ .section .debug_info,"",@progbits |
+.Ldebug_info0: |
+ .long 0xe4 |
+ .value 0x2 |
+ .long .Ldebug_abbrev0 |
+ .byte 0x4 |
+ .uleb128 0x1 |
+ .long .LASF0 |
+ .byte 0x1 |
+ .long .LASF1 |
+ .long .LASF2 |
+ .long .Ldebug_ranges0+0 |
+ .long 0 |
+ .long 0 |
+ .long .Ldebug_line0 |
+ .uleb128 0x2 |
+ .string "str" |
+ .byte 0xc |
+ .byte 0x1 |
+ .byte 0x17 |
+ .long 0x6c |
+ .uleb128 0x3 |
+ .string "a" |
+ .byte 0x1 |
+ .byte 0x19 |
+ .long 0x6c |
+ .byte 0x2 |
+ .byte 0x23 |
+ .uleb128 0 |
+ .uleb128 0x3 |
+ .string "b" |
+ .byte 0x1 |
+ .byte 0x1a |
+ .long 0x6c |
+ .byte 0x2 |
+ .byte 0x23 |
+ .uleb128 0x4 |
+ .uleb128 0x4 |
+ .string "c" |
+ .byte 0x1 |
+ .byte 0x1b |
+ .long 0x6c |
+ .byte 0x4 |
+ .byte 0x3 |
+ .byte 0x1d |
+ .byte 0x2 |
+ .byte 0x23 |
+ .uleb128 0x8 |
+ .uleb128 0x4 |
+ .string "d" |
+ .byte 0x1 |
+ .byte 0x1c |
+ .long 0x6c |
+ .byte 0x4 |
+ .byte 0x3 |
+ .byte 0x1a |
+ .byte 0x2 |
+ .byte 0x23 |
+ .uleb128 0x8 |
+ .byte 0 |
+ .uleb128 0x5 |
+ .byte 0x4 |
+ .byte 0x5 |
+ .string "int" |
+ .uleb128 0x6 |
+ .byte 0x1 |
+ .string "foo" |
+ .byte 0x1 |
+ .byte 0x20 |
+ .byte 0x1 |
+ .long 0x6c |
+ .long .LFB0 |
+ .long .LFE0 |
+ .byte 0x2 |
+ .byte 0x74 |
+ .sleb128 4 |
+ .byte 0x1 |
+ .long 0x9f |
+ .uleb128 0x7 |
+ .string "arg" |
+ .byte 0x1 |
+ .byte 0x20 |
+ .long 0x6c |
+ .byte 0x2 |
+ .byte 0x91 |
+ .sleb128 0 |
+ .byte 0 |
+ .uleb128 0x8 |
+ .byte 0x1 |
+ .long .LASF3 |
+ .byte 0x1 |
+ .byte 0x26 |
+ .byte 0x1 |
+ .long 0x6c |
+ .long .LFB1 |
+ .long .LFE1 |
+ .long .LLST0 |
+ .byte 0x1 |
+ .uleb128 0x9 |
+ .string "s" |
+ .byte 0x1 |
+ .byte 0x28 |
+ .long 0x29 |
+ .byte 0x6 |
+ .byte 0x35 |
+ .byte 0x9f |
+ .byte 0x93 |
+ .uleb128 0x4 |
+ .byte 0x93 |
+ .uleb128 0x8 |
+ .uleb128 0xa |
+ .string "v" |
+ .byte 0x1 |
+ .byte 0x29 |
+ .long 0x6c |
+ .long .LLST1 |
+ .uleb128 0xb |
+ .long .LVL2 |
+ .long 0x73 |
+ .uleb128 0xc |
+ .byte 0x2 |
+ .byte 0x74 |
+ .sleb128 0 |
+ .byte 0x1 |
+ .byte 0x3a |
+ .byte 0 |
+ .byte 0 |
+ .byte 0 |
+ .section .debug_abbrev,"",@progbits |
+.Ldebug_abbrev0: |
+ .uleb128 0x1 |
+ .uleb128 0x11 |
+ .byte 0x1 |
+ .uleb128 0x25 |
+ .uleb128 0xe |
+ .uleb128 0x13 |
+ .uleb128 0xb |
+ .uleb128 0x3 |
+ .uleb128 0xe |
+ .uleb128 0x1b |
+ .uleb128 0xe |
+ .uleb128 0x55 |
+ .uleb128 0x6 |
+ .uleb128 0x11 |
+ .uleb128 0x1 |
+ .uleb128 0x52 |
+ .uleb128 0x1 |
+ .uleb128 0x10 |
+ .uleb128 0x6 |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x2 |
+ .uleb128 0x13 |
+ .byte 0x1 |
+ .uleb128 0x3 |
+ .uleb128 0x8 |
+ .uleb128 0xb |
+ .uleb128 0xb |
+ .uleb128 0x3a |
+ .uleb128 0xb |
+ .uleb128 0x3b |
+ .uleb128 0xb |
+ .uleb128 0x1 |
+ .uleb128 0x13 |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x3 |
+ .uleb128 0xd |
+ .byte 0 |
+ .uleb128 0x3 |
+ .uleb128 0x8 |
+ .uleb128 0x3a |
+ .uleb128 0xb |
+ .uleb128 0x3b |
+ .uleb128 0xb |
+ .uleb128 0x49 |
+ .uleb128 0x13 |
+ .uleb128 0x38 |
+ .uleb128 0xa |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x4 |
+ .uleb128 0xd |
+ .byte 0 |
+ .uleb128 0x3 |
+ .uleb128 0x8 |
+ .uleb128 0x3a |
+ .uleb128 0xb |
+ .uleb128 0x3b |
+ .uleb128 0xb |
+ .uleb128 0x49 |
+ .uleb128 0x13 |
+ .uleb128 0xb |
+ .uleb128 0xb |
+ .uleb128 0xd |
+ .uleb128 0xb |
+ .uleb128 0xc |
+ .uleb128 0xb |
+ .uleb128 0x38 |
+ .uleb128 0xa |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x5 |
+ .uleb128 0x24 |
+ .byte 0 |
+ .uleb128 0xb |
+ .uleb128 0xb |
+ .uleb128 0x3e |
+ .uleb128 0xb |
+ .uleb128 0x3 |
+ .uleb128 0x8 |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x6 |
+ .uleb128 0x2e |
+ .byte 0x1 |
+ .uleb128 0x3f |
+ .uleb128 0xc |
+ .uleb128 0x3 |
+ .uleb128 0x8 |
+ .uleb128 0x3a |
+ .uleb128 0xb |
+ .uleb128 0x3b |
+ .uleb128 0xb |
+ .uleb128 0x27 |
+ .uleb128 0xc |
+ .uleb128 0x49 |
+ .uleb128 0x13 |
+ .uleb128 0x11 |
+ .uleb128 0x1 |
+ .uleb128 0x12 |
+ .uleb128 0x1 |
+ .uleb128 0x40 |
+ .uleb128 0xa |
+ .uleb128 0x2117 |
+ .uleb128 0xc |
+ .uleb128 0x1 |
+ .uleb128 0x13 |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x7 |
+ .uleb128 0x5 |
+ .byte 0 |
+ .uleb128 0x3 |
+ .uleb128 0x8 |
+ .uleb128 0x3a |
+ .uleb128 0xb |
+ .uleb128 0x3b |
+ .uleb128 0xb |
+ .uleb128 0x49 |
+ .uleb128 0x13 |
+ .uleb128 0x2 |
+ .uleb128 0xa |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x8 |
+ .uleb128 0x2e |
+ .byte 0x1 |
+ .uleb128 0x3f |
+ .uleb128 0xc |
+ .uleb128 0x3 |
+ .uleb128 0xe |
+ .uleb128 0x3a |
+ .uleb128 0xb |
+ .uleb128 0x3b |
+ .uleb128 0xb |
+ .uleb128 0x27 |
+ .uleb128 0xc |
+ .uleb128 0x49 |
+ .uleb128 0x13 |
+ .uleb128 0x11 |
+ .uleb128 0x1 |
+ .uleb128 0x12 |
+ .uleb128 0x1 |
+ .uleb128 0x40 |
+ .uleb128 0x6 |
+ .uleb128 0x2117 |
+ .uleb128 0xc |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0x9 |
+ .uleb128 0x34 |
+ .byte 0 |
+ .uleb128 0x3 |
+ .uleb128 0x8 |
+ .uleb128 0x3a |
+ .uleb128 0xb |
+ .uleb128 0x3b |
+ .uleb128 0xb |
+ .uleb128 0x49 |
+ .uleb128 0x13 |
+ .uleb128 0x2 |
+ .uleb128 0xa |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0xa |
+ .uleb128 0x34 |
+ .byte 0 |
+ .uleb128 0x3 |
+ .uleb128 0x8 |
+ .uleb128 0x3a |
+ .uleb128 0xb |
+ .uleb128 0x3b |
+ .uleb128 0xb |
+ .uleb128 0x49 |
+ .uleb128 0x13 |
+ .uleb128 0x2 |
+ .uleb128 0x6 |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0xb |
+ .uleb128 0x4109 |
+ .byte 0x1 |
+ .uleb128 0x11 |
+ .uleb128 0x1 |
+ .uleb128 0x31 |
+ .uleb128 0x13 |
+ .byte 0 |
+ .byte 0 |
+ .uleb128 0xc |
+ .uleb128 0x410a |
+ .byte 0 |
+ .uleb128 0x2 |
+ .uleb128 0xa |
+ .uleb128 0x2111 |
+ .uleb128 0xa |
+ .byte 0 |
+ .byte 0 |
+ .byte 0 |
+ .section .debug_loc,"",@progbits |
+.Ldebug_loc0: |
+.LLST0: |
+ .long .LFB1 |
+ .long .LCFI0 |
+ .value 0x2 |
+ .byte 0x74 |
+ .sleb128 4 |
+ .long .LCFI0 |
+ .long .LCFI1 |
+ .value 0x2 |
+ .byte 0x74 |
+ .sleb128 8 |
+ .long .LCFI1 |
+ .long .LFE1 |
+ .value 0x2 |
+ .byte 0x74 |
+ .sleb128 4 |
+ .long 0 |
+ .long 0 |
+.LLST1: |
+ .long .LVL1 |
+ .long .LVL2 |
+ .value 0x2 |
+ .byte 0x3a |
+ .byte 0x9f |
+ .long .LVL2 |
+ .long .LVL3 |
+ .value 0x3 |
+ .byte 0x70 |
+ .sleb128 10 |
+ .byte 0x9f |
+ .long .LVL3 |
+ .long .LFE1 |
+ .value 0x3 |
+ .byte 0x70 |
+ .sleb128 -10 |
+ .byte 0x9f |
+ .long 0 |
+ .long 0 |
+ .section .debug_aranges,"",@progbits |
+ .long 0x24 |
+ .value 0x2 |
+ .long .Ldebug_info0 |
+ .byte 0x4 |
+ .byte 0 |
+ .value 0 |
+ .value 0 |
+ .long .Ltext0 |
+ .long .Letext0-.Ltext0 |
+ .long .LFB1 |
+ .long .LFE1-.LFB1 |
+ .long 0 |
+ .long 0 |
+ .section .debug_ranges,"",@progbits |
+.Ldebug_ranges0: |
+ .long .Ltext0 |
+ .long .Letext0 |
+ .long .LFB1 |
+ .long .LFE1 |
+ .long 0 |
+ .long 0 |
+ .section .debug_line,"",@progbits |
+.Ldebug_line0: |
+ .section .debug_str,"MS",@progbits,1 |
+.LASF2: |
+ .string "/home/username/" |
+.LASF1: |
+ .string "pieces-optimized-out.c" |
+.LASF0: |
+ .string "GNU C 4.7.2" |
+.LASF3: |
+ .string "main" |
+ .ident "GCC: (GNU) 4.7.2" |
+ .section .note.GNU-stack,"",@progbits |