xref: /netbsd-src/external/gpl3/gdb/dist/sim/testsuite/frv/cstq.cgs (revision 4b169a6ba595ae283ca507b26b15fdff40495b1c)
1# frv testcase for cstq $GRk,@($GRi,$GRj),$CCi,$cond
2# mach: frv
3# as(frv): -mcpu=frv
4
5	.include "testutils.inc"
6
7	start
8
9	.global cstq
10cstq:
11	set_spr_immed	0x1b1b,cccr
12
13	set_gr_gr	sp,gr22
14	set_mem_limmed	0xbeef,0xdead,sp
15	inc_gr_immed	-4,sp
16	set_mem_limmed	0xdead,0xbeef,sp
17	inc_gr_immed	-4,sp
18	set_mem_limmed	0xdead,0xdead,sp
19	inc_gr_immed	-4,sp
20	set_mem_limmed	0xbeef,0xbeef,sp
21	set_gr_gr	sp,gr20
22	set_gr_gr	sp,gr21
23
24	set_gr_immed	0,gr7
25	set_gr_limmed	0xbeef,0xdead,gr8
26	set_gr_limmed	0xdead,0xbeef,gr9
27	set_gr_limmed	0xdead,0xdead,gr10
28	set_gr_limmed	0xbeef,0xbeef,gr11
29	cstq		gr8,@(sp,gr7),cc0,1
30	test_mem_limmed	0xbeef,0xdead,gr21
31	inc_gr_immed	4,gr21
32	test_mem_limmed	0xdead,0xbeef,gr21
33	inc_gr_immed	4,gr21
34	test_mem_limmed	0xdead,0xdead,gr21
35	inc_gr_immed	4,gr21
36	test_mem_limmed	0xbeef,0xbeef,gr21
37
38	set_gr_gr	gr20,gr21
39	inc_gr_immed	-16,sp
40	set_gr_immed	16,gr7
41	set_gr_limmed	0xaaaa,0xaaaa,gr8
42	set_gr_limmed	0xbbbb,0xbbbb,gr9
43	set_gr_limmed	0xcccc,0xcccc,gr10
44	set_gr_limmed	0xdddd,0xdddd,gr11
45	cstq		gr8,@(sp,gr7),cc0,1
46	test_mem_limmed	0xaaaa,0xaaaa,gr21
47	inc_gr_immed	4,gr21
48	test_mem_limmed	0xbbbb,0xbbbb,gr21
49	inc_gr_immed	4,gr21
50	test_mem_limmed	0xcccc,0xcccc,gr21
51	inc_gr_immed	4,gr21
52	test_mem_limmed	0xdddd,0xdddd,gr21
53
54	set_gr_gr	gr20,gr21
55	inc_gr_immed	32,sp
56	set_gr_immed	-16,gr7
57	set_gr_limmed	0x1111,0x1111,gr8
58	set_gr_limmed	0x2222,0x2222,gr9
59	set_gr_limmed	0x3333,0x3333,gr10
60	set_gr_limmed	0x4444,0x4444,gr11
61	cstq		gr8,@(sp,gr7),cc4,1
62	test_mem_limmed	0x1111,0x1111,gr21
63	inc_gr_immed	4,gr21
64	test_mem_limmed	0x2222,0x2222,gr21
65	inc_gr_immed	4,gr21
66	test_mem_limmed	0x3333,0x3333,gr21
67	inc_gr_immed	4,gr21
68	test_mem_limmed	0x4444,0x4444,gr21
69
70	set_gr_gr	gr22,sp
71	set_mem_limmed	0xbeef,0xdead,sp
72	inc_gr_immed	-4,sp
73	set_mem_limmed	0xdead,0xbeef,sp
74	inc_gr_immed	-4,sp
75	set_mem_limmed	0xdead,0xdead,sp
76	inc_gr_immed	-4,sp
77	set_mem_limmed	0xbeef,0xbeef,sp
78	set_gr_gr	sp,gr20
79	set_gr_gr	sp,gr21
80
81	set_gr_immed	0,gr7
82	set_gr_limmed	0xbeef,0xdead,gr8
83	set_gr_limmed	0xdead,0xbeef,gr9
84	set_gr_limmed	0xdead,0xdead,gr10
85	set_gr_limmed	0xbeef,0xbeef,gr11
86	cstq		gr8,@(sp,gr7),cc0,0
87	test_mem_limmed	0xbeef,0xbeef,gr21
88	inc_gr_immed	4,gr21
89	test_mem_limmed	0xdead,0xdead,gr21
90	inc_gr_immed	4,gr21
91	test_mem_limmed	0xdead,0xbeef,gr21
92	inc_gr_immed	4,gr21
93	test_mem_limmed	0xbeef,0xdead,gr21
94
95	set_gr_gr	gr20,gr21
96	inc_gr_immed	-16,sp
97	set_gr_immed	16,gr7
98	set_gr_limmed	0xaaaa,0xaaaa,gr8
99	set_gr_limmed	0xbbbb,0xbbbb,gr9
100	set_gr_limmed	0xcccc,0xcccc,gr10
101	set_gr_limmed	0xdddd,0xdddd,gr11
102	cstq		gr8,@(sp,gr7),cc0,0
103	test_mem_limmed	0xbeef,0xbeef,gr21
104	inc_gr_immed	4,gr21
105	test_mem_limmed	0xdead,0xdead,gr21
106	inc_gr_immed	4,gr21
107	test_mem_limmed	0xdead,0xbeef,gr21
108	inc_gr_immed	4,gr21
109	test_mem_limmed	0xbeef,0xdead,gr21
110
111	set_gr_gr	gr20,gr21
112	inc_gr_immed	32,sp
113	set_gr_immed	-16,gr7
114	set_gr_limmed	0x1111,0x1111,gr8
115	set_gr_limmed	0x2222,0x2222,gr9
116	set_gr_limmed	0x3333,0x3333,gr10
117	set_gr_limmed	0x4444,0x4444,gr11
118	cstq		gr8,@(sp,gr7),cc4,0
119	test_mem_limmed	0xbeef,0xbeef,gr21
120	inc_gr_immed	4,gr21
121	test_mem_limmed	0xdead,0xdead,gr21
122	inc_gr_immed	4,gr21
123	test_mem_limmed	0xdead,0xbeef,gr21
124	inc_gr_immed	4,gr21
125	test_mem_limmed	0xbeef,0xdead,gr21
126
127	set_gr_gr	gr22,sp
128	set_mem_limmed	0xbeef,0xdead,sp
129	inc_gr_immed	-4,sp
130	set_mem_limmed	0xdead,0xbeef,sp
131	inc_gr_immed	-4,sp
132	set_mem_limmed	0xdead,0xdead,sp
133	inc_gr_immed	-4,sp
134	set_mem_limmed	0xbeef,0xbeef,sp
135	set_gr_gr	sp,gr20
136	set_gr_gr	sp,gr21
137
138	set_gr_immed	0,gr7
139	set_gr_limmed	0xbeef,0xdead,gr8
140	set_gr_limmed	0xdead,0xbeef,gr9
141	set_gr_limmed	0xdead,0xdead,gr10
142	set_gr_limmed	0xbeef,0xbeef,gr11
143	cstq		gr8,@(sp,gr7),cc1,0
144	test_mem_limmed	0xbeef,0xdead,gr21
145	inc_gr_immed	4,gr21
146	test_mem_limmed	0xdead,0xbeef,gr21
147	inc_gr_immed	4,gr21
148	test_mem_limmed	0xdead,0xdead,gr21
149	inc_gr_immed	4,gr21
150	test_mem_limmed	0xbeef,0xbeef,gr21
151
152	set_gr_gr	gr20,gr21
153	inc_gr_immed	-16,sp
154	set_gr_immed	16,gr7
155	set_gr_limmed	0xaaaa,0xaaaa,gr8
156	set_gr_limmed	0xbbbb,0xbbbb,gr9
157	set_gr_limmed	0xcccc,0xcccc,gr10
158	set_gr_limmed	0xdddd,0xdddd,gr11
159	cstq		gr8,@(sp,gr7),cc1,0
160	test_mem_limmed	0xaaaa,0xaaaa,gr21
161	inc_gr_immed	4,gr21
162	test_mem_limmed	0xbbbb,0xbbbb,gr21
163	inc_gr_immed	4,gr21
164	test_mem_limmed	0xcccc,0xcccc,gr21
165	inc_gr_immed	4,gr21
166	test_mem_limmed	0xdddd,0xdddd,gr21
167
168	set_gr_gr	gr20,gr21
169	inc_gr_immed	32,sp
170	set_gr_immed	-16,gr7
171	set_gr_limmed	0x1111,0x1111,gr8
172	set_gr_limmed	0x2222,0x2222,gr9
173	set_gr_limmed	0x3333,0x3333,gr10
174	set_gr_limmed	0x4444,0x4444,gr11
175	cstq		gr8,@(sp,gr7),cc5,0
176	test_mem_limmed	0x1111,0x1111,gr21
177	inc_gr_immed	4,gr21
178	test_mem_limmed	0x2222,0x2222,gr21
179	inc_gr_immed	4,gr21
180	test_mem_limmed	0x3333,0x3333,gr21
181	inc_gr_immed	4,gr21
182	test_mem_limmed	0x4444,0x4444,gr21
183
184	set_gr_gr	gr22,sp
185	set_mem_limmed	0xbeef,0xdead,sp
186	inc_gr_immed	-4,sp
187	set_mem_limmed	0xdead,0xbeef,sp
188	inc_gr_immed	-4,sp
189	set_mem_limmed	0xdead,0xdead,sp
190	inc_gr_immed	-4,sp
191	set_mem_limmed	0xbeef,0xbeef,sp
192	set_gr_gr	sp,gr20
193	set_gr_gr	sp,gr21
194
195	set_gr_immed	0,gr7
196	set_gr_limmed	0xbeef,0xdead,gr8
197	set_gr_limmed	0xdead,0xbeef,gr9
198	set_gr_limmed	0xdead,0xdead,gr10
199	set_gr_limmed	0xbeef,0xbeef,gr11
200	cstq		gr8,@(sp,gr7),cc1,1
201	test_mem_limmed	0xbeef,0xbeef,gr21
202	inc_gr_immed	4,gr21
203	test_mem_limmed	0xdead,0xdead,gr21
204	inc_gr_immed	4,gr21
205	test_mem_limmed	0xdead,0xbeef,gr21
206	inc_gr_immed	4,gr21
207	test_mem_limmed	0xbeef,0xdead,gr21
208
209	set_gr_gr	gr20,gr21
210	inc_gr_immed	-16,sp
211	set_gr_immed	16,gr7
212	set_gr_limmed	0xaaaa,0xaaaa,gr8
213	set_gr_limmed	0xbbbb,0xbbbb,gr9
214	set_gr_limmed	0xcccc,0xcccc,gr10
215	set_gr_limmed	0xdddd,0xdddd,gr11
216	cstq		gr8,@(sp,gr7),cc1,1
217	test_mem_limmed	0xbeef,0xbeef,gr21
218	inc_gr_immed	4,gr21
219	test_mem_limmed	0xdead,0xdead,gr21
220	inc_gr_immed	4,gr21
221	test_mem_limmed	0xdead,0xbeef,gr21
222	inc_gr_immed	4,gr21
223	test_mem_limmed	0xbeef,0xdead,gr21
224
225	set_gr_gr	gr20,gr21
226	inc_gr_immed	32,sp
227	set_gr_immed	-16,gr7
228	set_gr_limmed	0x1111,0x1111,gr8
229	set_gr_limmed	0x2222,0x2222,gr9
230	set_gr_limmed	0x3333,0x3333,gr10
231	set_gr_limmed	0x4444,0x4444,gr11
232	cstq		gr8,@(sp,gr7),cc5,1
233	test_mem_limmed	0xbeef,0xbeef,gr21
234	inc_gr_immed	4,gr21
235	test_mem_limmed	0xdead,0xdead,gr21
236	inc_gr_immed	4,gr21
237	test_mem_limmed	0xdead,0xbeef,gr21
238	inc_gr_immed	4,gr21
239	test_mem_limmed	0xbeef,0xdead,gr21
240
241	set_gr_gr	gr22,sp
242	set_mem_limmed	0xbeef,0xdead,sp
243	inc_gr_immed	-4,sp
244	set_mem_limmed	0xdead,0xbeef,sp
245	inc_gr_immed	-4,sp
246	set_mem_limmed	0xdead,0xdead,sp
247	inc_gr_immed	-4,sp
248	set_mem_limmed	0xbeef,0xbeef,sp
249	set_gr_gr	sp,gr20
250	set_gr_gr	sp,gr21
251
252	set_gr_immed	0,gr7
253	set_gr_limmed	0xbeef,0xdead,gr8
254	set_gr_limmed	0xdead,0xbeef,gr9
255	set_gr_limmed	0xdead,0xdead,gr10
256	set_gr_limmed	0xbeef,0xbeef,gr11
257	cstq		gr8,@(sp,gr7),cc2,0
258	test_mem_limmed	0xbeef,0xbeef,gr21
259	inc_gr_immed	4,gr21
260	test_mem_limmed	0xdead,0xdead,gr21
261	inc_gr_immed	4,gr21
262	test_mem_limmed	0xdead,0xbeef,gr21
263	inc_gr_immed	4,gr21
264	test_mem_limmed	0xbeef,0xdead,gr21
265
266	set_gr_gr	gr20,gr21
267	inc_gr_immed	-16,sp
268	set_gr_immed	16,gr7
269	set_gr_limmed	0xaaaa,0xaaaa,gr8
270	set_gr_limmed	0xbbbb,0xbbbb,gr9
271	set_gr_limmed	0xcccc,0xcccc,gr10
272	set_gr_limmed	0xdddd,0xdddd,gr11
273	cstq		gr8,@(sp,gr7),cc2,1
274	test_mem_limmed	0xbeef,0xbeef,gr21
275	inc_gr_immed	4,gr21
276	test_mem_limmed	0xdead,0xdead,gr21
277	inc_gr_immed	4,gr21
278	test_mem_limmed	0xdead,0xbeef,gr21
279	inc_gr_immed	4,gr21
280	test_mem_limmed	0xbeef,0xdead,gr21
281
282	set_gr_gr	gr20,gr21
283	inc_gr_immed	32,sp
284	set_gr_immed	-16,gr7
285	set_gr_limmed	0x1111,0x1111,gr8
286	set_gr_limmed	0x2222,0x2222,gr9
287	set_gr_limmed	0x3333,0x3333,gr10
288	set_gr_limmed	0x4444,0x4444,gr11
289	cstq		gr8,@(sp,gr7),cc6,0
290	test_mem_limmed	0xbeef,0xbeef,gr21
291	inc_gr_immed	4,gr21
292	test_mem_limmed	0xdead,0xdead,gr21
293	inc_gr_immed	4,gr21
294	test_mem_limmed	0xdead,0xbeef,gr21
295	inc_gr_immed	4,gr21
296	test_mem_limmed	0xbeef,0xdead,gr21
297
298	set_gr_gr	gr22,sp
299	set_mem_limmed	0xbeef,0xdead,sp
300	inc_gr_immed	-4,sp
301	set_mem_limmed	0xdead,0xbeef,sp
302	inc_gr_immed	-4,sp
303	set_mem_limmed	0xdead,0xdead,sp
304	inc_gr_immed	-4,sp
305	set_mem_limmed	0xbeef,0xbeef,sp
306	set_gr_gr	sp,gr20
307	set_gr_gr	sp,gr21
308
309	set_gr_immed	0,gr7
310	set_gr_limmed	0xbeef,0xdead,gr8
311	set_gr_limmed	0xdead,0xbeef,gr9
312	set_gr_limmed	0xdead,0xdead,gr10
313	set_gr_limmed	0xbeef,0xbeef,gr11
314	cstq		gr8,@(sp,gr7),cc3,1
315	test_mem_limmed	0xbeef,0xbeef,gr21
316	inc_gr_immed	4,gr21
317	test_mem_limmed	0xdead,0xdead,gr21
318	inc_gr_immed	4,gr21
319	test_mem_limmed	0xdead,0xbeef,gr21
320	inc_gr_immed	4,gr21
321	test_mem_limmed	0xbeef,0xdead,gr21
322
323	set_gr_gr	gr20,gr21
324	inc_gr_immed	-16,sp
325	set_gr_immed	16,gr7
326	set_gr_limmed	0xaaaa,0xaaaa,gr8
327	set_gr_limmed	0xbbbb,0xbbbb,gr9
328	set_gr_limmed	0xcccc,0xcccc,gr10
329	set_gr_limmed	0xdddd,0xdddd,gr11
330	cstq		gr8,@(sp,gr7),cc3,0
331	test_mem_limmed	0xbeef,0xbeef,gr21
332	inc_gr_immed	4,gr21
333	test_mem_limmed	0xdead,0xdead,gr21
334	inc_gr_immed	4,gr21
335	test_mem_limmed	0xdead,0xbeef,gr21
336	inc_gr_immed	4,gr21
337	test_mem_limmed	0xbeef,0xdead,gr21
338
339	set_gr_gr	gr20,gr21
340	inc_gr_immed	32,sp
341	set_gr_immed	-16,gr7
342	set_gr_limmed	0x1111,0x1111,gr8
343	set_gr_limmed	0x2222,0x2222,gr9
344	set_gr_limmed	0x3333,0x3333,gr10
345	set_gr_limmed	0x4444,0x4444,gr11
346	cstq		gr8,@(sp,gr7),cc7,1
347	test_mem_limmed	0xbeef,0xbeef,gr21
348	inc_gr_immed	4,gr21
349	test_mem_limmed	0xdead,0xdead,gr21
350	inc_gr_immed	4,gr21
351	test_mem_limmed	0xdead,0xbeef,gr21
352	inc_gr_immed	4,gr21
353	test_mem_limmed	0xbeef,0xdead,gr21
354
355	pass
356