xref: /netbsd-src/external/gpl3/gdb.old/dist/gdb/testsuite/gdb.arch/amd64-optimout-repeat.S (revision 8b657b0747480f8989760d71343d6dd33f8d4cf9)
1/* This testcase is part of GDB, the GNU debugger.
2
3   Copyright 2012-2023 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-param.c
19   using -g -dA -S -O2.  */
20
21	.file	"amd64-optimout-repeat.c"
22	.text
23.Ltext0:
24	.section	.text.unlikely,"ax",@progbits
25.LCOLDB0:
26	.section	.text.startup,"ax",@progbits
27.LHOTB0:
28	.p2align 4,,15
29	.section	.text.unlikely
30.Ltext_cold0:
31	.section	.text.startup
32	.globl	main
33	.type	main, @function
34main:
35.LFB0:
36	.file 1 "gdb.arch/amd64-optimout-repeat.c"
37	# gdb.arch/amd64-optimout-repeat.c:20
38	.loc 1 20 0
39	.cfi_startproc
40# BLOCK 2 freq:10000 seq:0
41# PRED: ENTRY [100.0%]  (FALLTHRU)
42.LVL0:
43	# gdb.arch/amd64-optimout-repeat.c:29
44	.loc 1 29 0
45	xorl	%eax, %eax
46# SUCC: EXIT [100.0%]
47	ret
48	.cfi_endproc
49.LFE0:
50	.size	main, .-main
51	.section	.text.unlikely
52.LCOLDE0:
53	.section	.text.startup
54.LHOTE0:
55	.text
56.Letext0:
57	.section	.text.unlikely
58.Letext_cold0:
59	.section	.debug_info,"",@progbits
60.Ldebug_info0:
61	.long	0x97	# Length of Compilation Unit Info
62	.value	0x4	# DWARF version number
63	.long	.Ldebug_abbrev0	# Offset Into Abbrev. Section
64	.byte	0x8	# Pointer Size (in bytes)
65	.uleb128 0x1	# (DIE (0xb) DW_TAG_compile_unit)
66	.long	.LASF1	# DW_AT_producer: "GNU C 4.9.1 20140709 (prerelease) -mtune=generic -march=x86-64 -g -O2"
67	.byte	0x1	# DW_AT_language
68	.long	.LASF2	# DW_AT_name: "gdb.arch/amd64-optimout-repeat.c"
69	.long	.LASF3	# DW_AT_comp_dir: ""
70	.long	.Ldebug_ranges0+0	# DW_AT_ranges
71	.quad	0	# DW_AT_low_pc
72	.long	.Ldebug_line0	# DW_AT_stmt_list
73	.uleb128 0x2	# (DIE (0x29) DW_TAG_subprogram)
74			# DW_AT_external
75	.long	.LASF4	# DW_AT_name: "main"
76	.byte	0x1	# DW_AT_decl_file (gdb.arch/amd64-optimout-repeat.c)
77	.byte	0x13	# DW_AT_decl_line
78			# DW_AT_prototyped
79	.long	0x7c	# DW_AT_type
80	.quad	.LFB0	# DW_AT_low_pc
81	.quad	.LFE0-.LFB0	# DW_AT_high_pc
82	.uleb128 0x1	# DW_AT_frame_base
83	.byte	0x9c	# DW_OP_call_frame_cfa
84			# DW_AT_GNU_all_call_sites
85	.long	0x7c	# DW_AT_sibling
86	.uleb128 0x3	# (DIE (0x4a) DW_TAG_structure_type)
87	.value	0x404	# DW_AT_byte_size
88	.byte	0x1	# DW_AT_decl_file (gdb.arch/amd64-optimout-repeat.c)
89	.byte	0x15	# DW_AT_decl_line
90	.long	0x6a	# DW_AT_sibling
91	.uleb128 0x4	# (DIE (0x53) DW_TAG_member)
92	.ascii "i\0"	# DW_AT_name
93	.byte	0x1	# DW_AT_decl_file (gdb.arch/amd64-optimout-repeat.c)
94	.byte	0x17	# DW_AT_decl_line
95	.long	0x7c	# DW_AT_type
96	.byte	0	# DW_AT_data_member_location
97	.uleb128 0x4	# (DIE (0x5d) DW_TAG_member)
98	.ascii "xxx\0"	# DW_AT_name
99	.byte	0x1	# DW_AT_decl_file (gdb.arch/amd64-optimout-repeat.c)
100	.byte	0x18	# DW_AT_decl_line
101	.long	0x83	# DW_AT_type
102	.byte	0x4	# DW_AT_data_member_location
103	.byte	0	# end of children of DIE 0x4a
104	.uleb128 0x5	# (DIE (0x6a) DW_TAG_variable)
105	.ascii "v\0"	# DW_AT_name
106	.byte	0x1	# DW_AT_decl_file (gdb.arch/amd64-optimout-repeat.c)
107	.byte	0x1a	# DW_AT_decl_line
108	.long	0x4a	# DW_AT_type
109	.uleb128 0x7	# DW_AT_location
110	.byte	0x30	# DW_OP_lit0
111	.byte	0x9f	# DW_OP_stack_value
112	.byte	0x93	# DW_OP_piece
113	.uleb128 0x4
114	.byte	0x93	# DW_OP_piece
115	.uleb128 0x400
116	.byte	0	# end of children of DIE 0x29
117	.uleb128 0x6	# (DIE (0x7c) DW_TAG_base_type)
118	.byte	0x4	# DW_AT_byte_size
119	.byte	0x5	# DW_AT_encoding
120	.ascii "int\0"	# DW_AT_name
121	.uleb128 0x7	# (DIE (0x83) DW_TAG_array_type)
122	.long	0x7c	# DW_AT_type
123	.long	0x93	# DW_AT_sibling
124	.uleb128 0x8	# (DIE (0x8c) DW_TAG_subrange_type)
125	.long	0x93	# DW_AT_type
126	.byte	0xff	# DW_AT_upper_bound
127	.byte	0	# end of children of DIE 0x83
128	.uleb128 0x9	# (DIE (0x93) DW_TAG_base_type)
129	.byte	0x8	# DW_AT_byte_size
130	.byte	0x7	# DW_AT_encoding
131	.long	.LASF0	# DW_AT_name: "sizetype"
132	.byte	0	# end of children of DIE 0xb
133	.section	.debug_abbrev,"",@progbits
134.Ldebug_abbrev0:
135	.uleb128 0x1	# (abbrev code)
136	.uleb128 0x11	# (TAG: DW_TAG_compile_unit)
137	.byte	0x1	# DW_children_yes
138	.uleb128 0x25	# (DW_AT_producer)
139	.uleb128 0xe	# (DW_FORM_strp)
140	.uleb128 0x13	# (DW_AT_language)
141	.uleb128 0xb	# (DW_FORM_data1)
142	.uleb128 0x3	# (DW_AT_name)
143	.uleb128 0xe	# (DW_FORM_strp)
144	.uleb128 0x1b	# (DW_AT_comp_dir)
145	.uleb128 0xe	# (DW_FORM_strp)
146	.uleb128 0x55	# (DW_AT_ranges)
147	.uleb128 0x17	# (DW_FORM_sec_offset)
148	.uleb128 0x11	# (DW_AT_low_pc)
149	.uleb128 0x1	# (DW_FORM_addr)
150	.uleb128 0x10	# (DW_AT_stmt_list)
151	.uleb128 0x17	# (DW_FORM_sec_offset)
152	.byte	0
153	.byte	0
154	.uleb128 0x2	# (abbrev code)
155	.uleb128 0x2e	# (TAG: DW_TAG_subprogram)
156	.byte	0x1	# DW_children_yes
157	.uleb128 0x3f	# (DW_AT_external)
158	.uleb128 0x19	# (DW_FORM_flag_present)
159	.uleb128 0x3	# (DW_AT_name)
160	.uleb128 0xe	# (DW_FORM_strp)
161	.uleb128 0x3a	# (DW_AT_decl_file)
162	.uleb128 0xb	# (DW_FORM_data1)
163	.uleb128 0x3b	# (DW_AT_decl_line)
164	.uleb128 0xb	# (DW_FORM_data1)
165	.uleb128 0x27	# (DW_AT_prototyped)
166	.uleb128 0x19	# (DW_FORM_flag_present)
167	.uleb128 0x49	# (DW_AT_type)
168	.uleb128 0x13	# (DW_FORM_ref4)
169	.uleb128 0x11	# (DW_AT_low_pc)
170	.uleb128 0x1	# (DW_FORM_addr)
171	.uleb128 0x12	# (DW_AT_high_pc)
172	.uleb128 0x7	# (DW_FORM_data8)
173	.uleb128 0x40	# (DW_AT_frame_base)
174	.uleb128 0x18	# (DW_FORM_exprloc)
175	.uleb128 0x2117	# (DW_AT_GNU_all_call_sites)
176	.uleb128 0x19	# (DW_FORM_flag_present)
177	.uleb128 0x1	# (DW_AT_sibling)
178	.uleb128 0x13	# (DW_FORM_ref4)
179	.byte	0
180	.byte	0
181	.uleb128 0x3	# (abbrev code)
182	.uleb128 0x13	# (TAG: DW_TAG_structure_type)
183	.byte	0x1	# DW_children_yes
184	.uleb128 0xb	# (DW_AT_byte_size)
185	.uleb128 0x5	# (DW_FORM_data2)
186	.uleb128 0x3a	# (DW_AT_decl_file)
187	.uleb128 0xb	# (DW_FORM_data1)
188	.uleb128 0x3b	# (DW_AT_decl_line)
189	.uleb128 0xb	# (DW_FORM_data1)
190	.uleb128 0x1	# (DW_AT_sibling)
191	.uleb128 0x13	# (DW_FORM_ref4)
192	.byte	0
193	.byte	0
194	.uleb128 0x4	# (abbrev code)
195	.uleb128 0xd	# (TAG: DW_TAG_member)
196	.byte	0	# DW_children_no
197	.uleb128 0x3	# (DW_AT_name)
198	.uleb128 0x8	# (DW_FORM_string)
199	.uleb128 0x3a	# (DW_AT_decl_file)
200	.uleb128 0xb	# (DW_FORM_data1)
201	.uleb128 0x3b	# (DW_AT_decl_line)
202	.uleb128 0xb	# (DW_FORM_data1)
203	.uleb128 0x49	# (DW_AT_type)
204	.uleb128 0x13	# (DW_FORM_ref4)
205	.uleb128 0x38	# (DW_AT_data_member_location)
206	.uleb128 0xb	# (DW_FORM_data1)
207	.byte	0
208	.byte	0
209	.uleb128 0x5	# (abbrev code)
210	.uleb128 0x34	# (TAG: DW_TAG_variable)
211	.byte	0	# DW_children_no
212	.uleb128 0x3	# (DW_AT_name)
213	.uleb128 0x8	# (DW_FORM_string)
214	.uleb128 0x3a	# (DW_AT_decl_file)
215	.uleb128 0xb	# (DW_FORM_data1)
216	.uleb128 0x3b	# (DW_AT_decl_line)
217	.uleb128 0xb	# (DW_FORM_data1)
218	.uleb128 0x49	# (DW_AT_type)
219	.uleb128 0x13	# (DW_FORM_ref4)
220	.uleb128 0x2	# (DW_AT_location)
221	.uleb128 0x18	# (DW_FORM_exprloc)
222	.byte	0
223	.byte	0
224	.uleb128 0x6	# (abbrev code)
225	.uleb128 0x24	# (TAG: DW_TAG_base_type)
226	.byte	0	# DW_children_no
227	.uleb128 0xb	# (DW_AT_byte_size)
228	.uleb128 0xb	# (DW_FORM_data1)
229	.uleb128 0x3e	# (DW_AT_encoding)
230	.uleb128 0xb	# (DW_FORM_data1)
231	.uleb128 0x3	# (DW_AT_name)
232	.uleb128 0x8	# (DW_FORM_string)
233	.byte	0
234	.byte	0
235	.uleb128 0x7	# (abbrev code)
236	.uleb128 0x1	# (TAG: DW_TAG_array_type)
237	.byte	0x1	# DW_children_yes
238	.uleb128 0x49	# (DW_AT_type)
239	.uleb128 0x13	# (DW_FORM_ref4)
240	.uleb128 0x1	# (DW_AT_sibling)
241	.uleb128 0x13	# (DW_FORM_ref4)
242	.byte	0
243	.byte	0
244	.uleb128 0x8	# (abbrev code)
245	.uleb128 0x21	# (TAG: DW_TAG_subrange_type)
246	.byte	0	# DW_children_no
247	.uleb128 0x49	# (DW_AT_type)
248	.uleb128 0x13	# (DW_FORM_ref4)
249	.uleb128 0x2f	# (DW_AT_upper_bound)
250	.uleb128 0xb	# (DW_FORM_data1)
251	.byte	0
252	.byte	0
253	.uleb128 0x9	# (abbrev code)
254	.uleb128 0x24	# (TAG: DW_TAG_base_type)
255	.byte	0	# DW_children_no
256	.uleb128 0xb	# (DW_AT_byte_size)
257	.uleb128 0xb	# (DW_FORM_data1)
258	.uleb128 0x3e	# (DW_AT_encoding)
259	.uleb128 0xb	# (DW_FORM_data1)
260	.uleb128 0x3	# (DW_AT_name)
261	.uleb128 0xe	# (DW_FORM_strp)
262	.byte	0
263	.byte	0
264	.byte	0
265	.section	.debug_aranges,"",@progbits
266	.long	0x2c	# Length of Address Ranges Info
267	.value	0x2	# DWARF Version
268	.long	.Ldebug_info0	# Offset of Compilation Unit Info
269	.byte	0x8	# Size of Address
270	.byte	0	# Size of Segment Descriptor
271	.value	0	# Pad to 16 byte boundary
272	.value	0
273	.quad	.LFB0	# Address
274	.quad	.LFE0-.LFB0	# Length
275	.quad	0
276	.quad	0
277	.section	.debug_ranges,"",@progbits
278.Ldebug_ranges0:
279	.quad	.LFB0	# Offset 0
280	.quad	.LFE0
281	.quad	0
282	.quad	0
283	.section	.debug_line,"",@progbits
284.Ldebug_line0:
285	.section	.debug_str,"MS",@progbits,1
286.LASF0:
287	.string	"sizetype"
288.LASF2:
289	.string	"gdb.arch/amd64-optimout-repeat.c"
290.LASF1:
291	.string	"GNU C 4.9.1 20140709 (prerelease) -mtune=generic -march=x86-64 -g -O2"
292.LASF3:
293	.string	""
294.LASF4:
295	.string	"main"
296	.ident	"GCC: (GNU) 4.9.1 20140709 (prerelease)"
297	.section	.note.GNU-stack,"",@progbits
298