OSDN Git Service

72fd04a7009d8fe7bd32782589f1c1838c4230ed
[pf3gnuchains/pf3gnuchains4x.git] / sim / testsuite / sim / frv / rstqf.cgs
1 # frv testcase for rstqf $FRk,@($GRi,$GRj)
2 # mach: frv
3 # as(frv): -mcpu=frv
4
5         .include "testutils.inc"
6
7         start
8
9         .global add
10 add:
11         ; No nesr's active
12         set_gr_gr       sp,gr12
13         set_mem_limmed  0x2222,0x2222,gr12
14         set_gr_gr       gr12,gr27
15         inc_gr_immed    -4,gr27
16         set_mem_limmed  0x3333,0x3333,gr27
17         set_gr_gr       gr27,gr26
18         inc_gr_immed    -4,gr26
19         set_mem_limmed  0x4444,0x4444,gr26
20         set_gr_gr       gr26,gr25
21         inc_gr_immed    -4,gr25
22         set_mem_limmed  0x5555,0x5555,gr25
23         set_gr_gr       gr25,gr24
24         inc_gr_immed    -4,gr24
25         set_mem_limmed  0x6666,0x6666,gr24
26         set_gr_gr       gr24,gr23
27         inc_gr_immed    -4,gr23
28         set_mem_limmed  0x7777,0x7777,gr23
29         set_gr_gr       gr23,gr22
30         inc_gr_immed    -4,gr22
31         set_mem_limmed  0x8888,0x8888,gr22
32         set_gr_gr       gr22,gr21
33         inc_gr_immed    -4,gr21
34         set_mem_limmed  0x9999,0x9999,gr21
35         set_gr_gr       gr21,gr20
36         inc_gr_immed    -4,gr20
37         set_mem_limmed  0xaaaa,0xaaaa,gr20
38         set_gr_gr       gr20,gr19
39         inc_gr_immed    -4,gr19
40         set_mem_limmed  0xbbbb,0xbbbb,gr19
41         set_gr_gr       gr19,gr18
42         inc_gr_immed    -4,gr18
43         set_mem_limmed  0xcccc,0xcccc,gr18
44         set_gr_gr       gr18,gr17
45         inc_gr_immed    -4,gr17
46         set_mem_limmed  0xdddd,0xdddd,gr17
47         set_gr_gr       gr17,gr16
48         inc_gr_immed    -4,gr16
49         set_mem_limmed  0xeeee,0xeeee,gr16
50         set_gr_gr       gr16,gr15
51         inc_gr_immed    -4,gr15
52         set_mem_limmed  0xf0f0,0xf0f0,gr15
53         set_gr_gr       gr15,gr14
54         inc_gr_immed    -4,gr14
55         set_mem_limmed  0xf1f1,0xf1f1,gr14
56         set_gr_gr       gr14,gr13
57         inc_gr_immed    -4,gr13
58         set_mem_limmed  0xf2f2,0xf2f2,gr13
59         set_gr_limmed   0x1111,0x1111,gr40
60         set_gr_limmed   0x1111,0x1111,gr41
61         set_gr_limmed   0x1111,0x1111,gr42
62         set_gr_limmed   0x1111,0x1111,gr43
63         set_fr_iimmed   0x1111,0x1111,fr40
64         set_fr_iimmed   0x1111,0x1111,fr41
65         set_fr_iimmed   0x1111,0x1111,fr42
66         set_fr_iimmed   0x1111,0x1111,fr43
67         inc_gr_immed    -12,sp
68         set_gr_immed    0,gr7
69         set_fr_iimmed   0xeeee,0xeeee,fr8
70         set_fr_iimmed   0xffff,0xffff,fr9
71         set_fr_iimmed   0xcccc,0xcccc,fr10
72         set_fr_iimmed   0xdddd,0xdddd,fr11
73         rstqf           fr8,@(sp,gr7)
74         test_mem_limmed 0xdddd,0xdddd,gr12
75         test_mem_limmed 0xcccc,0xcccc,gr27
76         test_mem_limmed 0xffff,0xffff,gr26
77         test_mem_limmed 0xeeee,0xeeee,gr25
78         test_mem_limmed 0x6666,0x6666,gr24
79         test_mem_limmed 0x7777,0x7777,gr23
80         test_mem_limmed 0x8888,0x8888,gr22
81         test_mem_limmed 0x9999,0x9999,gr21
82         test_mem_limmed 0xaaaa,0xaaaa,gr20
83         test_mem_limmed 0xbbbb,0xbbbb,gr19
84         test_mem_limmed 0xcccc,0xcccc,gr18
85         test_mem_limmed 0xdddd,0xdddd,gr17
86         test_mem_limmed 0xeeee,0xeeee,gr16
87         test_mem_limmed 0xf0f0,0xf0f0,gr15
88         test_mem_limmed 0xf1f1,0xf1f1,gr14
89         test_mem_limmed 0xf2f2,0xf2f2,gr13
90         test_gr_limmed  0x1111,0x1111,gr40
91         test_gr_limmed  0x1111,0x1111,gr41
92         test_gr_limmed  0x1111,0x1111,gr42
93         test_gr_limmed  0x1111,0x1111,gr43
94         test_fr_limmed  0x1111,0x1111,fr40
95         test_fr_limmed  0x1111,0x1111,fr41
96         test_fr_limmed  0x1111,0x1111,fr42
97         test_fr_limmed  0x1111,0x1111,fr43
98
99         ; 1 nesr active with the incorrect address in neear for gr
100         set_gr_gr       sp,gr10
101         inc_gr_immed    -32,gr10
102         set_gr_immed    -32,gr9
103         nldq            @(sp,gr9),gr40
104         test_spr_gr     neear0,gr10
105         set_mem_limmed  0x2222,0x2222,gr12
106         set_mem_limmed  0x3333,0x3333,gr27
107         set_mem_limmed  0x4444,0x4444,gr26
108         set_mem_limmed  0x5555,0x5555,gr25
109         set_mem_limmed  0x6666,0x6666,gr24
110         set_mem_limmed  0x7777,0x7777,gr23
111         set_mem_limmed  0x8888,0x8888,gr22
112         set_mem_limmed  0x9999,0x9999,gr21
113         set_mem_limmed  0xaaaa,0xaaaa,gr20
114         set_mem_limmed  0xbbbb,0xbbbb,gr19
115         set_mem_limmed  0xcccc,0xcccc,gr18
116         set_mem_limmed  0xdddd,0xdddd,gr17
117         set_mem_limmed  0xeeee,0xeeee,gr16
118         set_mem_limmed  0xf0f0,0xf0f0,gr15
119         set_mem_limmed  0xf1f1,0xf1f1,gr14
120         set_mem_limmed  0xf2f2,0xf2f2,gr13
121         set_fr_iimmed   0xeeee,0xeeee,fr8
122         set_fr_iimmed   0xffff,0xffff,fr9
123         set_fr_iimmed   0xcccc,0xcccc,fr10
124         set_fr_iimmed   0xdddd,0xdddd,fr11
125         set_gr_limmed   0x1111,0x1111,gr40
126         set_gr_limmed   0x1111,0x1111,gr41
127         set_gr_limmed   0x1111,0x1111,gr42
128         set_gr_limmed   0x1111,0x1111,gr43
129         set_fr_iimmed   0x1111,0x1111,fr40
130         set_fr_iimmed   0x1111,0x1111,fr41
131         set_fr_iimmed   0x1111,0x1111,fr42
132         set_fr_iimmed   0x1111,0x1111,fr43
133         set_gr_immed    -16,gr7
134         rstqf           fr8,@(sp,gr7)
135         test_mem_limmed 0x2222,0x2222,gr12
136         test_mem_limmed 0x3333,0x3333,gr27
137         test_mem_limmed 0x4444,0x4444,gr26
138         test_mem_limmed 0x5555,0x5555,gr25
139         test_mem_limmed 0xdddd,0xdddd,gr24
140         test_mem_limmed 0xcccc,0xcccc,gr23
141         test_mem_limmed 0xffff,0xffff,gr22
142         test_mem_limmed 0xeeee,0xeeee,gr21
143         test_mem_limmed 0xaaaa,0xaaaa,gr20
144         test_mem_limmed 0xbbbb,0xbbbb,gr19
145         test_mem_limmed 0xcccc,0xcccc,gr18
146         test_mem_limmed 0xdddd,0xdddd,gr17
147         test_mem_limmed 0xeeee,0xeeee,gr16
148         test_mem_limmed 0xf0f0,0xf0f0,gr15
149         test_mem_limmed 0xf1f1,0xf1f1,gr14
150         test_mem_limmed 0xf2f2,0xf2f2,gr13
151         test_gr_limmed  0x1111,0x1111,gr40
152         test_gr_limmed  0x1111,0x1111,gr41
153         test_gr_limmed  0x1111,0x1111,gr42
154         test_gr_limmed  0x1111,0x1111,gr43
155         test_fr_limmed  0x1111,0x1111,fr40
156         test_fr_limmed  0x1111,0x1111,fr41
157         test_fr_limmed  0x1111,0x1111,fr42
158         test_fr_limmed  0x1111,0x1111,fr43
159
160         ; 1 nesr active with the incorrect address in neear for fr
161         inc_gr_immed    -16,gr10
162         nlddfi          @(sp,-48),fr40
163         test_spr_gr     neear1,gr10
164         set_mem_limmed  0x2222,0x2222,gr12
165         set_mem_limmed  0x3333,0x3333,gr27
166         set_mem_limmed  0x4444,0x4444,gr26
167         set_mem_limmed  0x5555,0x5555,gr25
168         set_mem_limmed  0x6666,0x6666,gr24
169         set_mem_limmed  0x7777,0x7777,gr23
170         set_mem_limmed  0x8888,0x8888,gr22
171         set_mem_limmed  0x9999,0x9999,gr21
172         set_mem_limmed  0xaaaa,0xaaaa,gr20
173         set_mem_limmed  0xbbbb,0xbbbb,gr19
174         set_mem_limmed  0xcccc,0xcccc,gr18
175         set_mem_limmed  0xdddd,0xdddd,gr17
176         set_mem_limmed  0xeeee,0xeeee,gr16
177         set_mem_limmed  0xf0f0,0xf0f0,gr15
178         set_mem_limmed  0xf1f1,0xf1f1,gr14
179         set_mem_limmed  0xf2f2,0xf2f2,gr13
180         set_fr_iimmed   0xeeee,0xeeee,fr8
181         set_fr_iimmed   0xffff,0xffff,fr9
182         set_fr_iimmed   0xcccc,0xcccc,fr10
183         set_fr_iimmed   0xdddd,0xdddd,fr11
184         set_gr_limmed   0x1111,0x1111,gr40
185         set_gr_limmed   0x1111,0x1111,gr41
186         set_gr_limmed   0x1111,0x1111,gr42
187         set_gr_limmed   0x1111,0x1111,gr43
188         set_fr_iimmed   0x1111,0x1111,fr40
189         set_fr_iimmed   0x1111,0x1111,fr41
190         set_fr_iimmed   0x1111,0x1111,fr42
191         set_fr_iimmed   0x1111,0x1111,fr43
192         inc_gr_immed    -16,sp
193         set_gr_immed    16,gr7
194         rstqf           fr8,@(sp,gr7)
195         test_mem_limmed 0xdddd,0xdddd,gr12
196         test_mem_limmed 0xcccc,0xcccc,gr27
197         test_mem_limmed 0xffff,0xffff,gr26
198         test_mem_limmed 0xeeee,0xeeee,gr25
199         test_mem_limmed 0x6666,0x6666,gr24
200         test_mem_limmed 0x7777,0x7777,gr23
201         test_mem_limmed 0x8888,0x8888,gr22
202         test_mem_limmed 0x9999,0x9999,gr21
203         test_mem_limmed 0xaaaa,0xaaaa,gr20
204         test_mem_limmed 0xbbbb,0xbbbb,gr19
205         test_mem_limmed 0xcccc,0xcccc,gr18
206         test_mem_limmed 0xdddd,0xdddd,gr17
207         test_mem_limmed 0xeeee,0xeeee,gr16
208         test_mem_limmed 0xf0f0,0xf0f0,gr15
209         test_mem_limmed 0xf1f1,0xf1f1,gr14
210         test_mem_limmed 0xf2f2,0xf2f2,gr13
211         test_gr_limmed  0x1111,0x1111,gr40
212         test_gr_limmed  0x1111,0x1111,gr41
213         test_gr_limmed  0x1111,0x1111,gr42
214         test_gr_limmed  0x1111,0x1111,gr43
215         test_fr_limmed  0x1111,0x1111,fr40
216         test_fr_limmed  0x1111,0x1111,fr41
217         test_fr_limmed  0x1111,0x1111,fr42
218         test_fr_limmed  0x1111,0x1111,fr43
219
220         ; 1 nesr active with the correct address in neear for gr
221         set_mem_limmed  0x2222,0x2222,gr12
222         set_mem_limmed  0x3333,0x3333,gr27
223         set_mem_limmed  0x4444,0x4444,gr26
224         set_mem_limmed  0x5555,0x5555,gr25
225         set_mem_limmed  0x6666,0x6666,gr24
226         set_mem_limmed  0x7777,0x7777,gr23
227         set_mem_limmed  0x8888,0x8888,gr22
228         set_mem_limmed  0x9999,0x9999,gr21
229         set_mem_limmed  0xaaaa,0xaaaa,gr20
230         set_mem_limmed  0xbbbb,0xbbbb,gr19
231         set_mem_limmed  0xcccc,0xcccc,gr18
232         set_mem_limmed  0xdddd,0xdddd,gr17
233         set_mem_limmed  0xeeee,0xeeee,gr16
234         set_mem_limmed  0xf0f0,0xf0f0,gr15
235         set_mem_limmed  0xf1f1,0xf1f1,gr14
236         set_mem_limmed  0xf2f2,0xf2f2,gr13
237         set_fr_iimmed   0xeeee,0xeeee,fr8
238         set_fr_iimmed   0xffff,0xffff,fr9
239         set_fr_iimmed   0xcccc,0xcccc,fr10
240         set_fr_iimmed   0xdddd,0xdddd,fr11
241         set_gr_limmed   0x1111,0x1111,gr40
242         set_gr_limmed   0x1111,0x1111,gr41
243         set_gr_limmed   0x1111,0x1111,gr42
244         set_gr_limmed   0x1111,0x1111,gr43
245         set_fr_iimmed   0x1111,0x1111,fr40
246         set_fr_iimmed   0x1111,0x1111,fr41
247         set_fr_iimmed   0x1111,0x1111,fr42
248         set_fr_iimmed   0x1111,0x1111,fr43
249         inc_gr_immed    -16,sp
250         set_gr_immed    0,gr7
251         rstqf           fr8,@(sp,gr7)
252         test_mem_limmed 0x2222,0x2222,gr12
253         test_mem_limmed 0x3333,0x3333,gr27
254         test_mem_limmed 0x4444,0x4444,gr26
255         test_mem_limmed 0x5555,0x5555,gr25
256         test_mem_limmed 0x6666,0x6666,gr24
257         test_mem_limmed 0x7777,0x7777,gr23
258         test_mem_limmed 0x8888,0x8888,gr22
259         test_mem_limmed 0x9999,0x9999,gr21
260         test_mem_limmed 0xdddd,0xdddd,gr20
261         test_mem_limmed 0xcccc,0xcccc,gr19
262         test_mem_limmed 0xffff,0xffff,gr18
263         test_mem_limmed 0xeeee,0xeeee,gr17
264         test_mem_limmed 0xeeee,0xeeee,gr16
265         test_mem_limmed 0xf0f0,0xf0f0,gr15
266         test_mem_limmed 0xf1f1,0xf1f1,gr14
267         test_mem_limmed 0xf2f2,0xf2f2,gr13
268         test_gr_limmed  0xeeee,0xeeee,gr40
269         test_gr_limmed  0xffff,0xffff,gr41
270         test_gr_limmed  0xcccc,0xcccc,gr42
271         test_gr_limmed  0xdddd,0xdddd,gr43
272         test_fr_limmed  0x1111,0x1111,fr40
273         test_fr_limmed  0x1111,0x1111,fr41
274         test_fr_limmed  0x1111,0x1111,fr42
275         test_fr_limmed  0x1111,0x1111,fr43
276
277         ; 1 nesr active with the correct address in neear for fr
278         set_mem_limmed  0x2222,0x2222,gr12
279         set_mem_limmed  0x3333,0x3333,gr27
280         set_mem_limmed  0x4444,0x4444,gr26
281         set_mem_limmed  0x5555,0x5555,gr25
282         set_mem_limmed  0x6666,0x6666,gr24
283         set_mem_limmed  0x7777,0x7777,gr23
284         set_mem_limmed  0x8888,0x8888,gr22
285         set_mem_limmed  0x9999,0x9999,gr21
286         set_mem_limmed  0xaaaa,0xaaaa,gr20
287         set_mem_limmed  0xbbbb,0xbbbb,gr19
288         set_mem_limmed  0xcccc,0xcccc,gr18
289         set_mem_limmed  0xdddd,0xdddd,gr17
290         set_mem_limmed  0xeeee,0xeeee,gr16
291         set_mem_limmed  0xf0f0,0xf0f0,gr15
292         set_mem_limmed  0xf1f1,0xf1f1,gr14
293         set_mem_limmed  0xf2f2,0xf2f2,gr13
294         set_fr_iimmed   0xeeee,0xeeee,fr8
295         set_fr_iimmed   0xffff,0xffff,fr9
296         set_fr_iimmed   0xcccc,0xcccc,fr10
297         set_fr_iimmed   0xdddd,0xdddd,fr11
298         set_gr_limmed   0x1111,0x1111,gr40
299         set_gr_limmed   0x1111,0x1111,gr41
300         set_gr_limmed   0x1111,0x1111,gr42
301         set_gr_limmed   0x1111,0x1111,gr43
302         set_fr_iimmed   0x1111,0x1111,fr40
303         set_fr_iimmed   0x1111,0x1111,fr41
304         set_fr_iimmed   0x1111,0x1111,fr42
305         set_fr_iimmed   0x1111,0x1111,fr43
306         set_gr_immed    -16,gr7
307         rstqf           fr8,@(sp,gr7)
308         test_mem_limmed 0x2222,0x2222,gr12
309         test_mem_limmed 0x3333,0x3333,gr27
310         test_mem_limmed 0x4444,0x4444,gr26
311         test_mem_limmed 0x5555,0x5555,gr25
312         test_mem_limmed 0x6666,0x6666,gr24
313         test_mem_limmed 0x7777,0x7777,gr23
314         test_mem_limmed 0x8888,0x8888,gr22
315         test_mem_limmed 0x9999,0x9999,gr21
316         test_mem_limmed 0xaaaa,0xaaaa,gr20
317         test_mem_limmed 0xbbbb,0xbbbb,gr19
318         test_mem_limmed 0xcccc,0xcccc,gr18
319         test_mem_limmed 0xdddd,0xdddd,gr17
320         test_mem_limmed 0xdddd,0xdddd,gr16
321         test_mem_limmed 0xcccc,0xcccc,gr15
322         test_mem_limmed 0xffff,0xffff,gr14
323         test_mem_limmed 0xeeee,0xeeee,gr13
324         test_gr_limmed  0x1111,0x1111,gr40
325         test_gr_limmed  0x1111,0x1111,gr41
326         test_gr_limmed  0x1111,0x1111,gr42
327         test_gr_limmed  0x1111,0x1111,gr43
328         test_fr_limmed  0xeeee,0xeeee,fr40
329         test_fr_limmed  0xffff,0xffff,fr41
330         test_fr_limmed  0xcccc,0xcccc,fr42
331         test_fr_limmed  0xdddd,0xdddd,fr43
332
333         pass