tizen 2.4 release
[external/binutils.git] / sim / testsuite / sim / frv / cstq.cgs
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
10 cstq:
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