binutils/
[external/binutils.git] / sim / testsuite / sim / frv / bcnlr.cgs
1 # frv testcase for bcnlr $ICCi,$ccond,$hint
2 # mach: all
3
4         .include "testutils.inc"
5
6         start
7
8         .global bcnlr
9 bcnlr:
10         ; ccond is true
11         set_spr_immed   128,lcr
12         set_spr_addr    bad,lr
13         set_icc         0x0 0
14         bcnlr           icc0,0,0
15
16         set_spr_addr    bad,lr
17         set_icc         0x1 1
18         bcnlr           icc1,0,1
19
20         set_spr_addr    bad,lr
21         set_icc         0x2 2
22         bcnlr           icc2,0,2
23
24         set_spr_addr    bad,lr
25         set_icc         0x3 3
26         bcnlr           icc3,0,3
27
28         set_spr_addr    bad,lr
29         set_icc         0x4 0
30         bcnlr           icc0,0,0
31
32         set_spr_addr    bad,lr
33         set_icc         0x5 1
34         bcnlr           icc1,0,1
35
36         set_spr_addr    bad,lr
37         set_icc         0x6 2
38         bcnlr           icc2,0,2
39
40         set_spr_addr    bad,lr
41         set_icc         0x7 3
42         bcnlr           icc3,0,3
43
44         set_spr_addr    ok9,lr
45         set_icc         0x8 0
46         bcnlr           icc0,0,0
47         fail
48 ok9:
49         set_spr_addr    oka,lr
50         set_icc         0x9 1
51         bcnlr           icc1,0,1
52         fail
53 oka:
54         set_spr_addr    okb,lr
55         set_icc         0xa 2
56         bcnlr           icc2,0,2
57         fail
58 okb:
59         set_spr_addr    okc,lr
60         set_icc         0xb 3
61         bcnlr           icc3,0,3
62         fail
63 okc:
64         set_spr_addr    okd,lr
65         set_icc         0xc 0
66         bcnlr           icc0,0,0
67         fail
68 okd:
69         set_spr_addr    oke,lr
70         set_icc         0xd 1
71         bcnlr           icc1,0,1
72         fail
73 oke:
74         set_spr_addr    okf,lr
75         set_icc         0xe 2
76         bcnlr           icc2,0,2
77         fail
78 okf:
79         set_spr_addr    okg,lr
80         set_icc         0xf 3
81         bcnlr           icc3,0,3
82         fail
83 okg:
84
85         ; ccond is true
86         set_spr_immed   1,lcr
87         set_spr_addr    bad,lr
88         set_icc         0x0 0
89         bcnlr           icc0,1,0
90
91         set_spr_immed   1,lcr
92         set_spr_addr    bad,lr
93         set_icc         0x1 1
94         bcnlr           icc1,1,1
95
96         set_spr_immed   1,lcr
97         set_spr_addr    bad,lr
98         set_icc         0x2 2
99         bcnlr           icc2,1,2
100
101         set_spr_immed   1,lcr
102         set_spr_addr    bad,lr
103         set_icc         0x3 3
104         bcnlr           icc3,1,3
105
106         set_spr_immed   1,lcr
107         set_spr_addr    bad,lr
108         set_icc         0x4 0
109         bcnlr           icc0,1,0
110
111         set_spr_immed   1,lcr
112         set_spr_addr    bad,lr
113         set_icc         0x5 1
114         bcnlr           icc1,1,1
115
116         set_spr_immed   1,lcr
117         set_spr_addr    bad,lr
118         set_icc         0x6 2
119         bcnlr           icc2,1,2
120
121         set_spr_immed   1,lcr
122         set_spr_addr    bad,lr
123         set_icc         0x7 3
124         bcnlr           icc3,1,3
125
126         set_spr_immed   1,lcr
127         set_spr_addr    okp,lr
128         set_icc         0x8 0
129         bcnlr           icc0,1,0
130         fail
131 okp:
132         set_spr_immed   1,lcr
133         set_spr_addr    okq,lr
134         set_icc         0x9 1
135         bcnlr           icc1,1,1
136         fail
137 okq:
138         set_spr_immed   1,lcr
139         set_spr_addr    okr,lr
140         set_icc         0xa 2
141         bcnlr           icc2,1,2
142         fail
143 okr:
144         set_spr_immed   1,lcr
145         set_spr_addr    oks,lr
146         set_icc         0xb 3
147         bcnlr           icc3,1,3
148         fail
149 oks:
150         set_spr_immed   1,lcr
151         set_spr_addr    okt,lr
152         set_icc         0xc 0
153         bcnlr           icc0,1,0
154         fail
155 okt:
156         set_spr_immed   1,lcr
157         set_spr_addr    oku,lr
158         set_icc         0xd 1
159         bcnlr           icc1,1,1
160         fail
161 oku:
162         set_spr_immed   1,lcr
163         set_spr_addr    okv,lr
164         set_icc         0xe 2
165         bcnlr           icc2,1,2
166         fail
167 okv:
168         set_spr_immed   1,lcr
169         set_spr_addr    okw,lr
170         set_icc         0xf 3
171         bcnlr           icc3,1,3
172         fail
173 okw:
174         ; ccond is false
175         set_spr_immed   128,lcr
176         set_spr_addr    bad,lr
177         set_icc         0x0 0
178         bcnlr           icc0,1,0
179
180         set_icc         0x1 1
181         bcnlr           icc1,1,1
182
183         set_icc         0x2 2
184         bcnlr           icc2,1,2
185
186         set_icc         0x3 3
187         bcnlr           icc3,1,3
188
189         set_icc         0x4 0
190         bcnlr           icc0,1,0
191
192         set_icc         0x5 1
193         bcnlr           icc1,1,1
194
195         set_icc         0x6 2
196         bcnlr           icc2,1,2
197
198         set_icc         0x7 3
199         bcnlr           icc3,1,3
200
201         set_icc         0x8 0
202         bcnlr           icc0,1,0
203
204         set_icc         0x9 1
205         bcnlr           icc1,1,1
206
207         set_icc         0xa 2
208         bcnlr           icc2,1,2
209
210         set_icc         0xb 3
211         bcnlr           icc3,1,3
212
213         set_icc         0xc 0
214         bcnlr           icc0,1,0
215
216         set_icc         0xd 1
217         bcnlr           icc1,1,1
218
219         set_icc         0xe 2
220         bcnlr           icc2,1,2
221
222         set_icc         0xf 3
223         bcnlr           icc3,1,3
224
225         ; ccond is false
226         set_spr_immed   1,lcr
227         set_spr_addr    bad,lr
228         set_icc         0x0 0
229         bcnlr           icc0,0,0
230
231         set_spr_immed   1,lcr
232         set_icc         0x1 1
233         bcnlr           icc1,0,1
234
235         set_spr_immed   1,lcr
236         set_icc         0x2 2
237         bcnlr           icc2,0,2
238
239         set_spr_immed   1,lcr
240         set_icc         0x3 3
241         bcnlr           icc3,0,3
242
243         set_spr_immed   1,lcr
244         set_icc         0x4 0
245         bcnlr           icc0,0,0
246
247         set_spr_immed   1,lcr
248         set_icc         0x5 1
249         bcnlr           icc1,0,1
250
251         set_spr_immed   1,lcr
252         set_icc         0x6 2
253         bcnlr           icc2,0,2
254
255         set_spr_immed   1,lcr
256         set_icc         0x7 3
257         bcnlr           icc3,0,3
258
259         set_spr_immed   1,lcr
260         set_icc         0x8 0
261         bcnlr           icc0,0,0
262
263         set_spr_immed   1,lcr
264         set_icc         0x9 1
265         bcnlr           icc1,0,1
266
267         set_spr_immed   1,lcr
268         set_icc         0xa 2
269         bcnlr           icc2,0,2
270
271         set_spr_immed   1,lcr
272         set_icc         0xb 3
273         bcnlr           icc3,0,3
274
275         set_spr_immed   1,lcr
276         set_icc         0xc 0
277         bcnlr           icc0,0,0
278
279         set_spr_immed   1,lcr
280         set_icc         0xd 1
281         bcnlr           icc1,0,1
282
283         set_spr_immed   1,lcr
284         set_icc         0xe 2
285         bcnlr           icc2,0,2
286
287         set_spr_immed   1,lcr
288         set_icc         0xf 3
289         bcnlr           icc3,0,3
290
291         pass
292 bad:
293         fail