Imported Upstream version 7.8.1
[platform/upstream/gdb.git] / gdb / testsuite / gdb.python / amd64-py-framefilter-invalidarg.S
1 /* This testcase is part of GDB, the GNU debugger.
2
3    Copyright 2014 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 a single line
19    int main (int argc, char **argv) { return 0; }
20    using -g -dA -S -O2 and patched as #if-ed below.  */
21
22         .file   "py-framefilter-invalidarg.c"
23         .text
24 .Ltext0:
25         .globl  main
26         .type   main, @function
27 main:
28 .LFB0:
29         .file 1 "py-framefilter-invalidarg.c"
30         # py-framefilter-invalidarg.c:1
31         .loc 1 1 0
32         .cfi_startproc
33 # BLOCK 2 seq:0
34 # PRED: ENTRY (FALLTHRU)
35         pushq   %rbp
36         .cfi_def_cfa_offset 16
37         .cfi_offset 6, -16
38         movq    %rsp, %rbp
39         .cfi_def_cfa_register 6
40         movl    %edi, -4(%rbp)
41         movq    %rsi, -16(%rbp)
42         # py-framefilter-invalidarg.c:2
43         .loc 1 2 0
44         movl    $0, %eax
45         # py-framefilter-invalidarg.c:3
46         .loc 1 3 0
47         popq    %rbp
48         .cfi_def_cfa 7, 8
49 # SUCC: EXIT [100.0%] 
50         ret
51         .cfi_endproc
52 .LFE0:
53         .size   main, .-main
54 .Letext0:
55         .section        .debug_info,"",@progbits
56 .Ldebug_info0:
57         .long   .Le - .Ls       # Length of Compilation Unit Info
58 .Ls:
59         .value  0x4     # DWARF version number
60         .long   .Ldebug_abbrev0 # Offset Into Abbrev. Section
61         .byte   0x8     # Pointer Size (in bytes)
62         .uleb128 0x1    # (DIE (0xb) DW_TAG_compile_unit)
63         .long   .LASF3  # DW_AT_producer: "GNU C 4.9.1 20140813 (Red Hat 4.9.1-7) -mtune=generic -march=x86-64 -g"
64         .byte   0x1     # DW_AT_language
65         .long   .LASF4  # DW_AT_name: "py-framefilter-invalidarg.c"
66         .long   .LASF5  # DW_AT_comp_dir: ""
67         .quad   .Ltext0 # DW_AT_low_pc
68         .quad   .Letext0-.Ltext0        # DW_AT_high_pc
69         .long   .Ldebug_line0   # DW_AT_stmt_list
70 die2d:
71         .uleb128 0x2    # (DIE (0x2d) DW_TAG_subprogram)
72                         # DW_AT_external
73         .long   .LASF6  # DW_AT_name: "main"
74         .byte   0x1     # DW_AT_decl_file (py-framefilter-invalidarg.c)
75         .byte   0x1     # DW_AT_decl_line
76                         # DW_AT_prototyped
77         .long   die6b-.Ldebug_info0     # DW_AT_type
78         .quad   .LFB0   # DW_AT_low_pc
79         .quad   .LFE0-.LFB0     # DW_AT_high_pc
80         .uleb128 0x1    # DW_AT_frame_base
81         .byte   0x9c    # DW_OP_call_frame_cfa
82                         # DW_AT_GNU_all_call_sites
83 die4e:
84         .uleb128 0x3    # (DIE (0x4e) DW_TAG_formal_parameter)
85         .long   .LASF0  # DW_AT_name: "argc"
86         .byte   0x1     # DW_AT_decl_file (py-framefilter-invalidarg.c)
87         .byte   0x1     # DW_AT_decl_line
88         .long   die6b-.Ldebug_info0     # DW_AT_type
89 #if 0
90         .uleb128 0x2    # DW_AT_location
91         .byte   0x91    # DW_OP_fbreg
92         .sleb128 -20
93 #endif
94 #if 0
95         .uleb128 1f - 2f        # DW_AT_location
96 2:
97         .byte   0x03    # DW_OP_addr
98         .quad 0
99 1:
100 #endif
101 #if 1
102         .uleb128 1f - 2f        # DW_AT_location
103 2:
104         .byte   0x13    # DW_OP_drop
105         .quad 0
106 1:
107 #endif
108 die5c:
109         .uleb128 0x3    # (DIE (0x5c) DW_TAG_formal_parameter)
110         .long   .LASF1  # DW_AT_name: "argv"
111         .byte   0x1     # DW_AT_decl_file (py-framefilter-invalidarg.c)
112         .byte   0x1     # DW_AT_decl_line
113         .long   die72-.Ldebug_info0     # DW_AT_type
114         .uleb128 0x2    # DW_AT_location
115         .byte   0x91    # DW_OP_fbreg
116         .sleb128 -32
117         .byte   0       # end of children of DIE 0x2d
118 die6b:
119         .uleb128 0x4    # (DIE (0x6b) DW_TAG_base_type)
120         .byte   0x4     # DW_AT_byte_size
121         .byte   0x5     # DW_AT_encoding
122         .ascii "int\0"  # DW_AT_name
123 die72:
124         .uleb128 0x5    # (DIE (0x72) DW_TAG_pointer_type)
125         .byte   0x8     # DW_AT_byte_size
126         .long   die78-.Ldebug_info0     # DW_AT_type
127 die78:
128         .uleb128 0x5    # (DIE (0x78) DW_TAG_pointer_type)
129         .byte   0x8     # DW_AT_byte_size
130         .long   die7e-.Ldebug_info0     # DW_AT_type
131 die7e:
132         .uleb128 0x6    # (DIE (0x7e) DW_TAG_base_type)
133         .byte   0x1     # DW_AT_byte_size
134         .byte   0x6     # DW_AT_encoding
135         .long   .LASF2  # DW_AT_name: "char"
136         .byte   0       # end of children of DIE 0xb
137 .Le:
138         .section        .debug_abbrev,"",@progbits
139 .Ldebug_abbrev0:
140         .uleb128 0x1    # (abbrev code)
141         .uleb128 0x11   # (TAG: DW_TAG_compile_unit)
142         .byte   0x1     # DW_children_yes
143         .uleb128 0x25   # (DW_AT_producer)
144         .uleb128 0xe    # (DW_FORM_strp)
145         .uleb128 0x13   # (DW_AT_language)
146         .uleb128 0xb    # (DW_FORM_data1)
147         .uleb128 0x3    # (DW_AT_name)
148         .uleb128 0xe    # (DW_FORM_strp)
149         .uleb128 0x1b   # (DW_AT_comp_dir)
150         .uleb128 0xe    # (DW_FORM_strp)
151         .uleb128 0x11   # (DW_AT_low_pc)
152         .uleb128 0x1    # (DW_FORM_addr)
153         .uleb128 0x12   # (DW_AT_high_pc)
154         .uleb128 0x7    # (DW_FORM_data8)
155         .uleb128 0x10   # (DW_AT_stmt_list)
156         .uleb128 0x17   # (DW_FORM_sec_offset)
157         .byte   0
158         .byte   0
159         .uleb128 0x2    # (abbrev code)
160         .uleb128 0x2e   # (TAG: DW_TAG_subprogram)
161         .byte   0x1     # DW_children_yes
162         .uleb128 0x3f   # (DW_AT_external)
163         .uleb128 0x19   # (DW_FORM_flag_present)
164         .uleb128 0x3    # (DW_AT_name)
165         .uleb128 0xe    # (DW_FORM_strp)
166         .uleb128 0x3a   # (DW_AT_decl_file)
167         .uleb128 0xb    # (DW_FORM_data1)
168         .uleb128 0x3b   # (DW_AT_decl_line)
169         .uleb128 0xb    # (DW_FORM_data1)
170         .uleb128 0x27   # (DW_AT_prototyped)
171         .uleb128 0x19   # (DW_FORM_flag_present)
172         .uleb128 0x49   # (DW_AT_type)
173         .uleb128 0x13   # (DW_FORM_ref4)
174         .uleb128 0x11   # (DW_AT_low_pc)
175         .uleb128 0x1    # (DW_FORM_addr)
176         .uleb128 0x12   # (DW_AT_high_pc)
177         .uleb128 0x7    # (DW_FORM_data8)
178         .uleb128 0x40   # (DW_AT_frame_base)
179         .uleb128 0x18   # (DW_FORM_exprloc)
180         .uleb128 0x2117 # (DW_AT_GNU_all_call_sites)
181         .uleb128 0x19   # (DW_FORM_flag_present)
182         .byte   0
183         .byte   0
184         .uleb128 0x3    # (abbrev code)
185         .uleb128 0x5    # (TAG: DW_TAG_formal_parameter)
186         .byte   0       # DW_children_no
187         .uleb128 0x3    # (DW_AT_name)
188         .uleb128 0xe    # (DW_FORM_strp)
189         .uleb128 0x3a   # (DW_AT_decl_file)
190         .uleb128 0xb    # (DW_FORM_data1)
191         .uleb128 0x3b   # (DW_AT_decl_line)
192         .uleb128 0xb    # (DW_FORM_data1)
193         .uleb128 0x49   # (DW_AT_type)
194         .uleb128 0x13   # (DW_FORM_ref4)
195         .uleb128 0x2    # (DW_AT_location)
196         .uleb128 0x18   # (DW_FORM_exprloc)
197         .byte   0
198         .byte   0
199         .uleb128 0x4    # (abbrev code)
200         .uleb128 0x24   # (TAG: DW_TAG_base_type)
201         .byte   0       # DW_children_no
202         .uleb128 0xb    # (DW_AT_byte_size)
203         .uleb128 0xb    # (DW_FORM_data1)
204         .uleb128 0x3e   # (DW_AT_encoding)
205         .uleb128 0xb    # (DW_FORM_data1)
206         .uleb128 0x3    # (DW_AT_name)
207         .uleb128 0x8    # (DW_FORM_string)
208         .byte   0
209         .byte   0
210         .uleb128 0x5    # (abbrev code)
211         .uleb128 0xf    # (TAG: DW_TAG_pointer_type)
212         .byte   0       # DW_children_no
213         .uleb128 0xb    # (DW_AT_byte_size)
214         .uleb128 0xb    # (DW_FORM_data1)
215         .uleb128 0x49   # (DW_AT_type)
216         .uleb128 0x13   # (DW_FORM_ref4)
217         .byte   0
218         .byte   0
219         .uleb128 0x6    # (abbrev code)
220         .uleb128 0x24   # (TAG: DW_TAG_base_type)
221         .byte   0       # DW_children_no
222         .uleb128 0xb    # (DW_AT_byte_size)
223         .uleb128 0xb    # (DW_FORM_data1)
224         .uleb128 0x3e   # (DW_AT_encoding)
225         .uleb128 0xb    # (DW_FORM_data1)
226         .uleb128 0x3    # (DW_AT_name)
227         .uleb128 0xe    # (DW_FORM_strp)
228         .byte   0
229         .byte   0
230         .byte   0
231         .section        .debug_aranges,"",@progbits
232         .long   0x2c    # Length of Address Ranges Info
233         .value  0x2     # DWARF Version
234         .long   .Ldebug_info0   # Offset of Compilation Unit Info
235         .byte   0x8     # Size of Address
236         .byte   0       # Size of Segment Descriptor
237         .value  0       # Pad to 16 byte boundary
238         .value  0
239         .quad   .Ltext0 # Address
240         .quad   .Letext0-.Ltext0        # Length
241         .quad   0
242         .quad   0
243         .section        .debug_line,"",@progbits
244 .Ldebug_line0:
245         .section        .debug_str,"MS",@progbits,1
246 .LASF1:
247         .string "argv"
248 .LASF4:
249         .string "py-framefilter-invalidarg.c"
250 .LASF5:
251         .string ""
252 .LASF0:
253         .string "argc"
254 .LASF3:
255         .string "GNU C 4.9.1 20140813 (Red Hat 4.9.1-7) -mtune=generic -march=x86-64 -g"
256 .LASF6:
257         .string "main"
258 .LASF2:
259         .string "char"
260         .ident  "GCC: (GNU) 4.9.1 20140813 (Red Hat 4.9.1-7)"
261         .section        .note.GNU-stack,"",@progbits