OpenCores
URL https://opencores.org/ocsvn/scarts/scarts/trunk

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gdb/] [gdb-6.8/] [sim/] [testsuite/] [sim/] [frv/] [fr550/] [cmqmachu.cgs] - Blame information for rev 26

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 26 jlechner
# frv testcase for cmqmachu $GRi,$GRj,$GRk,$CCi,$cond
2
# mach: all
3
 
4
        .include "../testutils.inc"
5
 
6
        start
7
 
8
        .global cmqmachu
9
cmqmachu:
10
        set_spr_immed   0x1b1b,cccr
11
 
12
        set_spr_immed   0,msr0
13
        set_accg_immed  0,accg0
14
        set_acc_immed   0,acc0
15
        set_accg_immed  0,accg1
16
        set_acc_immed   0,acc1
17
        set_accg_immed  0,accg2
18
        set_acc_immed   0,acc2
19
        set_accg_immed  0,accg3
20
        set_acc_immed   0,acc3
21
        set_fr_iimmed   3,2,fr8         ; multiply small numbers
22
        set_fr_iimmed   2,3,fr10
23
        set_fr_iimmed   1,2,fr9         ; multiply by 1
24
        set_fr_iimmed   2,1,fr11
25
        cmqmachu        fr8,fr10,acc0,cc0,1
26
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
27
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
28
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
29
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
30
        test_accg_immed         0,accg0
31
        test_acc_immed  6,acc0
32
        test_accg_immed         0,accg1
33
        test_acc_immed  6,acc1
34
        test_accg_immed         0,accg2
35
        test_acc_immed  2,acc2
36
        test_accg_immed         0,accg3
37
        test_acc_immed  2,acc3
38
 
39
        set_fr_iimmed   0,2,fr8         ; multiply by 0
40
        set_fr_iimmed   2,0,fr10
41
        set_fr_iimmed   0x3fff,2,fr9    ; 15 bit result
42
        set_fr_iimmed   2,0x3fff,fr11
43
        cmqmachu        fr8,fr10,acc0,cc0,1
44
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
45
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
46
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
47
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
48
        test_accg_immed         0,accg0
49
        test_acc_immed  6,acc0
50
        test_accg_immed         0,accg1
51
        test_acc_immed  6,acc1
52
        test_accg_immed         0,accg2
53
        test_acc_limmed 0x0000,0x8000,acc2
54
        test_accg_immed         0,accg3
55
        test_acc_limmed 0x0000,0x8000,acc3
56
 
57
        set_fr_iimmed   0x4000,2,fr8    ; 16 bit result
58
        set_fr_iimmed   2,0x4000,fr10
59
        set_fr_iimmed   0x8000,2,fr9    ; 17 bit result
60
        set_fr_iimmed   2,0x8000,fr11
61
        cmqmachu        fr8,fr10,acc0,cc0,1
62
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
63
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
64
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
65
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
66
        test_accg_immed         0,accg0
67
        test_acc_limmed 0x0000,0x8006,acc0
68
        test_accg_immed         0,accg1
69
        test_acc_limmed 0x0000,0x8006,acc1
70
        test_accg_immed         0,accg2
71
        test_acc_immed  0x00018000,acc2
72
        test_accg_immed         0,accg3
73
        test_acc_immed  0x00018000,acc3
74
 
75
        set_fr_iimmed   0x7fff,0x7fff,fr8       ; max positive result
76
        set_fr_iimmed   0x7fff,0x7fff,fr10
77
        set_fr_iimmed   0x8000,0x8000,fr9       ; max positive result
78
        set_fr_iimmed   0x8000,0x8000,fr11
79
        cmqmachu        fr8,fr10,acc0,cc4,1
80
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
81
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
82
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
83
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
84
        test_accg_immed         0,accg0
85
        test_acc_immed  0x3fff8007,acc0
86
        test_accg_immed         0,accg1
87
        test_acc_immed  0x3fff8007,acc1
88
        test_accg_immed         0,accg2
89
        test_acc_limmed 0x4001,0x8000,acc2
90
        test_accg_immed         0,accg3
91
        test_acc_limmed 0x4001,0x8000,acc3
92
 
93
        set_fr_iimmed   0xffff,0xffff,fr8       ; max positive result
94
        set_fr_iimmed   0xffff,0xffff,fr10
95
        set_fr_iimmed   0xffff,0xffff,fr9       ; max positive result
96
        set_fr_iimmed   0xffff,0xffff,fr11
97
        cmqmachu        fr8,fr10,acc0,cc4,1
98
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
99
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
100
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
101
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
102
        test_accg_immed         1,accg0
103
        test_acc_limmed 0x3ffd,0x8008,acc0
104
        test_accg_immed         1,accg1
105
        test_acc_limmed 0x3ffd,0x8008,acc1
106
        test_accg_immed         1,accg2
107
        test_acc_limmed 0x3fff,0x8001,acc2
108
        test_accg_immed         1,accg3
109
        test_acc_limmed 0x3fff,0x8001,acc3
110
 
111
        set_accg_immed  0xff,accg0              ; saturation
112
        set_acc_immed   0xffffffff,acc0
113
        set_accg_immed  0xff,accg1
114
        set_acc_immed   0xffffffff,acc1
115
        set_accg_immed  0xff,accg2              ; saturation
116
        set_acc_immed   0xffffffff,acc2
117
        set_accg_immed  0xff,accg3
118
        set_acc_immed   0xffffffff,acc3
119
        set_fr_iimmed   1,1,fr8
120
        set_fr_iimmed   1,1,fr10
121
        set_fr_iimmed   1,1,fr9
122
        set_fr_iimmed   1,1,fr11
123
        cmqmachu        fr8,fr10,acc0,cc4,1
124
        test_spr_bits   0x3c,2,0xf,msr0         ; msr0.sie is set
125
        test_spr_bits   2,1,1,msr0              ; msr0.ovf is set
126
        test_spr_bits   1,0,1,msr0              ; msr0.aovf is set
127
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt is set
128
        test_accg_immed         0xff,accg0
129
        test_acc_limmed 0xffff,0xffff,acc0
130
        test_accg_immed         0xff,accg1
131
        test_acc_limmed 0xffff,0xffff,acc1
132
        test_accg_immed         0xff,accg2
133
        test_acc_limmed 0xffff,0xffff,acc2
134
        test_accg_immed         0xff,accg3
135
        test_acc_limmed 0xffff,0xffff,acc3
136
 
137
        set_fr_iimmed   0xffff,0x0000,fr8
138
        set_fr_iimmed   0xffff,0xffff,fr10
139
        set_fr_iimmed   0x0000,0xffff,fr9
140
        set_fr_iimmed   0xffff,0xffff,fr11
141
        cmqmachu        fr8,fr10,acc0,cc4,1
142
        test_spr_bits   0x3c,2,0x9,msr0         ; msr0.sie is set
143
        test_spr_bits   2,1,1,msr0              ; msr0.ovf is set
144
        test_spr_bits   1,0,1,msr0              ; msr0.aovf is set
145
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt is set
146
        test_accg_immed         0xff,accg0
147
        test_acc_limmed 0xffff,0xffff,acc0
148
        test_accg_immed         0xff,accg1
149
        test_acc_limmed 0xffff,0xffff,acc1
150
        test_accg_immed         0xff,accg2
151
        test_acc_limmed 0xffff,0xffff,acc2
152
        test_accg_immed         0xff,accg3
153
        test_acc_limmed 0xffff,0xffff,acc3
154
 
155
        set_spr_immed   0,msr0
156
        set_accg_immed  0,accg0
157
        set_acc_immed   0,acc0
158
        set_accg_immed  0,accg1
159
        set_acc_immed   0,acc1
160
        set_accg_immed  0,accg2
161
        set_acc_immed   0,acc2
162
        set_accg_immed  0,accg3
163
        set_acc_immed   0,acc3
164
        set_fr_iimmed   3,2,fr8         ; multiply small numbers
165
        set_fr_iimmed   2,3,fr10
166
        set_fr_iimmed   1,2,fr9         ; multiply by 1
167
        set_fr_iimmed   2,1,fr11
168
        cmqmachu        fr8,fr10,acc0,cc1,0
169
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
170
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
171
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
172
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
173
        test_accg_immed         0,accg0
174
        test_acc_immed  6,acc0
175
        test_accg_immed         0,accg1
176
        test_acc_immed  6,acc1
177
        test_accg_immed         0,accg2
178
        test_acc_immed  2,acc2
179
        test_accg_immed         0,accg3
180
        test_acc_immed  2,acc3
181
 
182
        set_fr_iimmed   0,2,fr8         ; multiply by 0
183
        set_fr_iimmed   2,0,fr10
184
        set_fr_iimmed   0x3fff,2,fr9    ; 15 bit result
185
        set_fr_iimmed   2,0x3fff,fr11
186
        cmqmachu        fr8,fr10,acc0,cc1,0
187
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
188
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
189
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
190
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
191
        test_accg_immed         0,accg0
192
        test_acc_immed  6,acc0
193
        test_accg_immed         0,accg1
194
        test_acc_immed  6,acc1
195
        test_accg_immed         0,accg2
196
        test_acc_limmed 0x0000,0x8000,acc2
197
        test_accg_immed         0,accg3
198
        test_acc_limmed 0x0000,0x8000,acc3
199
 
200
        set_fr_iimmed   0x4000,2,fr8    ; 16 bit result
201
        set_fr_iimmed   2,0x4000,fr10
202
        set_fr_iimmed   0x8000,2,fr9    ; 17 bit result
203
        set_fr_iimmed   2,0x8000,fr11
204
        cmqmachu        fr8,fr10,acc0,cc1,0
205
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
206
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
207
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
208
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
209
        test_accg_immed         0,accg0
210
        test_acc_limmed 0x0000,0x8006,acc0
211
        test_accg_immed         0,accg1
212
        test_acc_limmed 0x0000,0x8006,acc1
213
        test_accg_immed         0,accg2
214
        test_acc_immed  0x00018000,acc2
215
        test_accg_immed         0,accg3
216
        test_acc_immed  0x00018000,acc3
217
 
218
        set_fr_iimmed   0x7fff,0x7fff,fr8       ; max positive result
219
        set_fr_iimmed   0x7fff,0x7fff,fr10
220
        set_fr_iimmed   0x8000,0x8000,fr9       ; max positive result
221
        set_fr_iimmed   0x8000,0x8000,fr11
222
        cmqmachu        fr8,fr10,acc0,cc5,0
223
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
224
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
225
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
226
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
227
        test_accg_immed         0,accg0
228
        test_acc_immed  0x3fff8007,acc0
229
        test_accg_immed         0,accg1
230
        test_acc_immed  0x3fff8007,acc1
231
        test_accg_immed         0,accg2
232
        test_acc_limmed 0x4001,0x8000,acc2
233
        test_accg_immed         0,accg3
234
        test_acc_limmed 0x4001,0x8000,acc3
235
 
236
        set_fr_iimmed   0xffff,0xffff,fr8       ; max positive result
237
        set_fr_iimmed   0xffff,0xffff,fr10
238
        set_fr_iimmed   0xffff,0xffff,fr9       ; max positive result
239
        set_fr_iimmed   0xffff,0xffff,fr11
240
        cmqmachu        fr8,fr10,acc0,cc5,0
241
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
242
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
243
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
244
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
245
        test_accg_immed         1,accg0
246
        test_acc_limmed 0x3ffd,0x8008,acc0
247
        test_accg_immed         1,accg1
248
        test_acc_limmed 0x3ffd,0x8008,acc1
249
        test_accg_immed         1,accg2
250
        test_acc_limmed 0x3fff,0x8001,acc2
251
        test_accg_immed         1,accg3
252
        test_acc_limmed 0x3fff,0x8001,acc3
253
 
254
        set_accg_immed  0xff,accg0              ; saturation
255
        set_acc_immed   0xffffffff,acc0
256
        set_accg_immed  0xff,accg1
257
        set_acc_immed   0xffffffff,acc1
258
        set_accg_immed  0xff,accg2              ; saturation
259
        set_acc_immed   0xffffffff,acc2
260
        set_accg_immed  0xff,accg3
261
        set_acc_immed   0xffffffff,acc3
262
        set_fr_iimmed   1,1,fr8
263
        set_fr_iimmed   1,1,fr10
264
        set_fr_iimmed   1,1,fr9
265
        set_fr_iimmed   1,1,fr11
266
        cmqmachu        fr8,fr10,acc0,cc5,0
267
        test_spr_bits   0x3c,2,0xf,msr0         ; msr0.sie is set
268
        test_spr_bits   2,1,1,msr0              ; msr0.ovf is set
269
        test_spr_bits   1,0,1,msr0              ; msr0.aovf is set
270
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt is set
271
        test_accg_immed         0xff,accg0
272
        test_acc_limmed 0xffff,0xffff,acc0
273
        test_accg_immed         0xff,accg1
274
        test_acc_limmed 0xffff,0xffff,acc1
275
        test_accg_immed         0xff,accg2
276
        test_acc_limmed 0xffff,0xffff,acc2
277
        test_accg_immed         0xff,accg3
278
        test_acc_limmed 0xffff,0xffff,acc3
279
 
280
        set_fr_iimmed   0xffff,0x0000,fr8
281
        set_fr_iimmed   0xffff,0xffff,fr10
282
        set_fr_iimmed   0x0000,0xffff,fr9
283
        set_fr_iimmed   0xffff,0xffff,fr11
284
        cmqmachu        fr8,fr10,acc0,cc5,0
285
        test_spr_bits   0x3c,2,0x9,msr0         ; msr0.sie is set
286
        test_spr_bits   2,1,1,msr0              ; msr0.ovf is set
287
        test_spr_bits   1,0,1,msr0              ; msr0.aovf is set
288
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt is set
289
        test_accg_immed         0xff,accg0
290
        test_acc_limmed 0xffff,0xffff,acc0
291
        test_accg_immed         0xff,accg1
292
        test_acc_limmed 0xffff,0xffff,acc1
293
        test_accg_immed         0xff,accg2
294
        test_acc_limmed 0xffff,0xffff,acc2
295
        test_accg_immed         0xff,accg3
296
        test_acc_limmed 0xffff,0xffff,acc3
297
 
298
        set_spr_immed   0,msr0
299
        set_accg_immed  0x00000011,accg0
300
        set_acc_immed   0x11111111,acc0
301
        set_accg_immed  0x00000022,accg1
302
        set_acc_immed   0x22222222,acc1
303
        set_accg_immed  0x00000033,accg2
304
        set_acc_immed   0x33333333,acc2
305
        set_accg_immed  0x00000044,accg3
306
        set_acc_immed   0x44444444,acc3
307
        set_fr_iimmed   3,2,fr8         ; multiply small numbers
308
        set_fr_iimmed   2,3,fr10
309
        set_fr_iimmed   1,2,fr9         ; multiply by 1
310
        set_fr_iimmed   2,1,fr11
311
        cmqmachu        fr8,fr10,acc0,cc0,0
312
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
313
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
314
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
315
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
316
        test_accg_immed         0x00000011,accg0
317
        test_acc_immed  0x11111111,acc0
318
        test_accg_immed         0x00000022,accg1
319
        test_acc_immed  0x22222222,acc1
320
        test_accg_immed         0x00000033,accg2
321
        test_acc_immed  0x33333333,acc2
322
        test_accg_immed         0x00000044,accg3
323
        test_acc_immed  0x44444444,acc3
324
 
325
        set_fr_iimmed   0,2,fr8         ; multiply by 0
326
        set_fr_iimmed   2,0,fr10
327
        set_fr_iimmed   0x3fff,2,fr9    ; 15 bit result
328
        set_fr_iimmed   2,0x3fff,fr11
329
        cmqmachu        fr8,fr10,acc0,cc0,0
330
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
331
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
332
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
333
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
334
        test_accg_immed         0x00000011,accg0
335
        test_acc_immed  0x11111111,acc0
336
        test_accg_immed         0x00000022,accg1
337
        test_acc_immed  0x22222222,acc1
338
        test_accg_immed         0x00000033,accg2
339
        test_acc_immed  0x33333333,acc2
340
        test_accg_immed         0x00000044,accg3
341
        test_acc_immed  0x44444444,acc3
342
 
343
        set_fr_iimmed   0x4000,2,fr8    ; 16 bit result
344
        set_fr_iimmed   2,0x4000,fr10
345
        set_fr_iimmed   0x8000,2,fr9    ; 17 bit result
346
        set_fr_iimmed   2,0x8000,fr11
347
        cmqmachu        fr8,fr10,acc0,cc0,0
348
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
349
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
350
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
351
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
352
        test_accg_immed         0x00000011,accg0
353
        test_acc_immed  0x11111111,acc0
354
        test_accg_immed         0x00000022,accg1
355
        test_acc_immed  0x22222222,acc1
356
        test_accg_immed         0x00000033,accg2
357
        test_acc_immed  0x33333333,acc2
358
        test_accg_immed         0x00000044,accg3
359
        test_acc_immed  0x44444444,acc3
360
 
361
        set_fr_iimmed   0x7fff,0x7fff,fr8       ; max positive result
362
        set_fr_iimmed   0x7fff,0x7fff,fr10
363
        set_fr_iimmed   0x8000,0x8000,fr9       ; max positive result
364
        set_fr_iimmed   0x8000,0x8000,fr11
365
        cmqmachu        fr8,fr10,acc0,cc4,0
366
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
367
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
368
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
369
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
370
        test_accg_immed         0x00000011,accg0
371
        test_acc_immed  0x11111111,acc0
372
        test_accg_immed         0x00000022,accg1
373
        test_acc_immed  0x22222222,acc1
374
        test_accg_immed         0x00000033,accg2
375
        test_acc_immed  0x33333333,acc2
376
        test_accg_immed         0x00000044,accg3
377
        test_acc_immed  0x44444444,acc3
378
 
379
        set_fr_iimmed   0xffff,0xffff,fr8       ; max positive result
380
        set_fr_iimmed   0xffff,0xffff,fr10
381
        set_fr_iimmed   0xffff,0xffff,fr9       ; max positive result
382
        set_fr_iimmed   0xffff,0xffff,fr11
383
        cmqmachu        fr8,fr10,acc0,cc4,0
384
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
385
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
386
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
387
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
388
        test_accg_immed         0x00000011,accg0
389
        test_acc_immed  0x11111111,acc0
390
        test_accg_immed         0x00000022,accg1
391
        test_acc_immed  0x22222222,acc1
392
        test_accg_immed         0x00000033,accg2
393
        test_acc_immed  0x33333333,acc2
394
        test_accg_immed         0x00000044,accg3
395
        test_acc_immed  0x44444444,acc3
396
 
397
        set_accg_immed  0xff,accg0              ; saturation
398
        set_acc_immed   0xffffffff,acc0
399
        set_accg_immed  0xff,accg1
400
        set_acc_immed   0xffffffff,acc1
401
        set_accg_immed  0xff,accg2              ; saturation
402
        set_acc_immed   0xffffffff,acc2
403
        set_accg_immed  0xff,accg3
404
        set_acc_immed   0xffffffff,acc3
405
        set_fr_iimmed   1,1,fr8
406
        set_fr_iimmed   1,1,fr10
407
        set_fr_iimmed   1,1,fr9
408
        set_fr_iimmed   1,1,fr11
409
        cmqmachu        fr8,fr10,acc0,cc4,0
410
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
411
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
412
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
413
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
414
        test_accg_immed         0xff,accg0              ; saturation
415
        test_acc_immed  0xffffffff,acc0
416
        test_accg_immed         0xff,accg1
417
        test_acc_immed  0xffffffff,acc1
418
        test_accg_immed         0xff,accg2              ; saturation
419
        test_acc_immed  0xffffffff,acc2
420
        test_accg_immed         0xff,accg3
421
        test_acc_immed  0xffffffff,acc3
422
 
423
        set_fr_iimmed   0xffff,0x0000,fr8
424
        set_fr_iimmed   0xffff,0xffff,fr10
425
        set_fr_iimmed   0x0000,0xffff,fr9
426
        set_fr_iimmed   0xffff,0xffff,fr11
427
        cmqmachu        fr8,fr10,acc0,cc4,0
428
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
429
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
430
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
431
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
432
        test_accg_immed         0xff,accg0              ; saturation
433
        test_acc_immed  0xffffffff,acc0
434
        test_accg_immed         0xff,accg1
435
        test_acc_immed  0xffffffff,acc1
436
        test_accg_immed         0xff,accg2              ; saturation
437
        test_acc_immed  0xffffffff,acc2
438
        test_accg_immed         0xff,accg3
439
        test_acc_immed  0xffffffff,acc3
440
 
441
        set_spr_immed   0,msr0
442
        set_accg_immed  0x00000011,accg0
443
        set_acc_immed   0x11111111,acc0
444
        set_accg_immed  0x00000022,accg1
445
        set_acc_immed   0x22222222,acc1
446
        set_accg_immed  0x00000033,accg2
447
        set_acc_immed   0x33333333,acc2
448
        set_accg_immed  0x00000044,accg3
449
        set_acc_immed   0x44444444,acc3
450
        set_fr_iimmed   3,2,fr8         ; multiply small numbers
451
        set_fr_iimmed   2,3,fr10
452
        set_fr_iimmed   1,2,fr9         ; multiply by 1
453
        set_fr_iimmed   2,1,fr11
454
        cmqmachu        fr8,fr10,acc0,cc1,1
455
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
456
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
457
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
458
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
459
        test_accg_immed         0x00000011,accg0
460
        test_acc_immed  0x11111111,acc0
461
        test_accg_immed         0x00000022,accg1
462
        test_acc_immed  0x22222222,acc1
463
        test_accg_immed         0x00000033,accg2
464
        test_acc_immed  0x33333333,acc2
465
        test_accg_immed         0x00000044,accg3
466
        test_acc_immed  0x44444444,acc3
467
 
468
        set_fr_iimmed   0,2,fr8         ; multiply by 0
469
        set_fr_iimmed   2,0,fr10
470
        set_fr_iimmed   0x3fff,2,fr9    ; 15 bit result
471
        set_fr_iimmed   2,0x3fff,fr11
472
        cmqmachu        fr8,fr10,acc0,cc1,1
473
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
474
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
475
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
476
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
477
        test_accg_immed         0x00000011,accg0
478
        test_acc_immed  0x11111111,acc0
479
        test_accg_immed         0x00000022,accg1
480
        test_acc_immed  0x22222222,acc1
481
        test_accg_immed         0x00000033,accg2
482
        test_acc_immed  0x33333333,acc2
483
        test_accg_immed         0x00000044,accg3
484
        test_acc_immed  0x44444444,acc3
485
 
486
        set_fr_iimmed   0x4000,2,fr8    ; 16 bit result
487
        set_fr_iimmed   2,0x4000,fr10
488
        set_fr_iimmed   0x8000,2,fr9    ; 17 bit result
489
        set_fr_iimmed   2,0x8000,fr11
490
        cmqmachu        fr8,fr10,acc0,cc1,1
491
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
492
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
493
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
494
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
495
        test_accg_immed         0x00000011,accg0
496
        test_acc_immed  0x11111111,acc0
497
        test_accg_immed         0x00000022,accg1
498
        test_acc_immed  0x22222222,acc1
499
        test_accg_immed         0x00000033,accg2
500
        test_acc_immed  0x33333333,acc2
501
        test_accg_immed         0x00000044,accg3
502
        test_acc_immed  0x44444444,acc3
503
 
504
        set_fr_iimmed   0x7fff,0x7fff,fr8       ; max positive result
505
        set_fr_iimmed   0x7fff,0x7fff,fr10
506
        set_fr_iimmed   0x8000,0x8000,fr9       ; max positive result
507
        set_fr_iimmed   0x8000,0x8000,fr11
508
        cmqmachu        fr8,fr10,acc0,cc5,1
509
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
510
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
511
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
512
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
513
        test_accg_immed         0x00000011,accg0
514
        test_acc_immed  0x11111111,acc0
515
        test_accg_immed         0x00000022,accg1
516
        test_acc_immed  0x22222222,acc1
517
        test_accg_immed         0x00000033,accg2
518
        test_acc_immed  0x33333333,acc2
519
        test_accg_immed         0x00000044,accg3
520
        test_acc_immed  0x44444444,acc3
521
 
522
        set_fr_iimmed   0xffff,0xffff,fr8       ; max positive result
523
        set_fr_iimmed   0xffff,0xffff,fr10
524
        set_fr_iimmed   0xffff,0xffff,fr9       ; max positive result
525
        set_fr_iimmed   0xffff,0xffff,fr11
526
        cmqmachu        fr8,fr10,acc0,cc5,1
527
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
528
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
529
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
530
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
531
        test_accg_immed         0x00000011,accg0
532
        test_acc_immed  0x11111111,acc0
533
        test_accg_immed         0x00000022,accg1
534
        test_acc_immed  0x22222222,acc1
535
        test_accg_immed         0x00000033,accg2
536
        test_acc_immed  0x33333333,acc2
537
        test_accg_immed         0x00000044,accg3
538
        test_acc_immed  0x44444444,acc3
539
 
540
        set_accg_immed  0xff,accg0              ; saturation
541
        set_acc_immed   0xffffffff,acc0
542
        set_accg_immed  0xff,accg1
543
        set_acc_immed   0xffffffff,acc1
544
        set_accg_immed  0xff,accg2              ; saturation
545
        set_acc_immed   0xffffffff,acc2
546
        set_accg_immed  0xff,accg3
547
        set_acc_immed   0xffffffff,acc3
548
        set_fr_iimmed   1,1,fr8
549
        set_fr_iimmed   1,1,fr10
550
        set_fr_iimmed   1,1,fr9
551
        set_fr_iimmed   1,1,fr11
552
        cmqmachu        fr8,fr10,acc0,cc5,1
553
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
554
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
555
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
556
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
557
        test_accg_immed         0xff,accg0              ; saturation
558
        test_acc_immed  0xffffffff,acc0
559
        test_accg_immed         0xff,accg1
560
        test_acc_immed  0xffffffff,acc1
561
        test_accg_immed         0xff,accg2              ; saturation
562
        test_acc_immed  0xffffffff,acc2
563
        test_accg_immed         0xff,accg3
564
        test_acc_immed  0xffffffff,acc3
565
 
566
        set_fr_iimmed   0xffff,0x0000,fr8
567
        set_fr_iimmed   0xffff,0xffff,fr10
568
        set_fr_iimmed   0x0000,0xffff,fr9
569
        set_fr_iimmed   0xffff,0xffff,fr11
570
        cmqmachu        fr8,fr10,acc0,cc5,1
571
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
572
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
573
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
574
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
575
        test_accg_immed         0xff,accg0              ; saturation
576
        test_acc_immed  0xffffffff,acc0
577
        test_accg_immed         0xff,accg1
578
        test_acc_immed  0xffffffff,acc1
579
        test_accg_immed         0xff,accg2              ; saturation
580
        test_acc_immed  0xffffffff,acc2
581
        test_accg_immed         0xff,accg3
582
        test_acc_immed  0xffffffff,acc3
583
 
584
        set_spr_immed   0,msr0
585
        set_accg_immed  0x00000011,accg0
586
        set_acc_immed   0x11111111,acc0
587
        set_accg_immed  0x00000022,accg1
588
        set_acc_immed   0x22222222,acc1
589
        set_accg_immed  0x00000033,accg2
590
        set_acc_immed   0x33333333,acc2
591
        set_accg_immed  0x00000044,accg3
592
        set_acc_immed   0x44444444,acc3
593
        set_fr_iimmed   3,2,fr8         ; multiply small numbers
594
        set_fr_iimmed   2,3,fr10
595
        set_fr_iimmed   1,2,fr9         ; multiply by 1
596
        set_fr_iimmed   2,1,fr11
597
        cmqmachu        fr8,fr10,acc0,cc2,1
598
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
599
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
600
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
601
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
602
        test_accg_immed         0x00000011,accg0
603
        test_acc_immed  0x11111111,acc0
604
        test_accg_immed         0x00000022,accg1
605
        test_acc_immed  0x22222222,acc1
606
        test_accg_immed         0x00000033,accg2
607
        test_acc_immed  0x33333333,acc2
608
        test_accg_immed         0x00000044,accg3
609
        test_acc_immed  0x44444444,acc3
610
 
611
        set_fr_iimmed   0,2,fr8         ; multiply by 0
612
        set_fr_iimmed   2,0,fr10
613
        set_fr_iimmed   0x3fff,2,fr9    ; 15 bit result
614
        set_fr_iimmed   2,0x3fff,fr11
615
        cmqmachu        fr8,fr10,acc0,cc2,0
616
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
617
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
618
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
619
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
620
        test_accg_immed         0x00000011,accg0
621
        test_acc_immed  0x11111111,acc0
622
        test_accg_immed         0x00000022,accg1
623
        test_acc_immed  0x22222222,acc1
624
        test_accg_immed         0x00000033,accg2
625
        test_acc_immed  0x33333333,acc2
626
        test_accg_immed         0x00000044,accg3
627
        test_acc_immed  0x44444444,acc3
628
 
629
        set_fr_iimmed   0x4000,2,fr8    ; 16 bit result
630
        set_fr_iimmed   2,0x4000,fr10
631
        set_fr_iimmed   0x8000,2,fr9    ; 17 bit result
632
        set_fr_iimmed   2,0x8000,fr11
633
        cmqmachu        fr8,fr10,acc0,cc2,1
634
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
635
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
636
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
637
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
638
        test_accg_immed         0x00000011,accg0
639
        test_acc_immed  0x11111111,acc0
640
        test_accg_immed         0x00000022,accg1
641
        test_acc_immed  0x22222222,acc1
642
        test_accg_immed         0x00000033,accg2
643
        test_acc_immed  0x33333333,acc2
644
        test_accg_immed         0x00000044,accg3
645
        test_acc_immed  0x44444444,acc3
646
 
647
        set_fr_iimmed   0x7fff,0x7fff,fr8       ; max positive result
648
        set_fr_iimmed   0x7fff,0x7fff,fr10
649
        set_fr_iimmed   0x8000,0x8000,fr9       ; max positive result
650
        set_fr_iimmed   0x8000,0x8000,fr11
651
        cmqmachu        fr8,fr10,acc0,cc6,0
652
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
653
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
654
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
655
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
656
        test_accg_immed         0x00000011,accg0
657
        test_acc_immed  0x11111111,acc0
658
        test_accg_immed         0x00000022,accg1
659
        test_acc_immed  0x22222222,acc1
660
        test_accg_immed         0x00000033,accg2
661
        test_acc_immed  0x33333333,acc2
662
        test_accg_immed         0x00000044,accg3
663
        test_acc_immed  0x44444444,acc3
664
 
665
        set_fr_iimmed   0xffff,0xffff,fr8       ; max positive result
666
        set_fr_iimmed   0xffff,0xffff,fr10
667
        set_fr_iimmed   0xffff,0xffff,fr9       ; max positive result
668
        set_fr_iimmed   0xffff,0xffff,fr11
669
        cmqmachu        fr8,fr10,acc0,cc6,1
670
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
671
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
672
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
673
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
674
        test_accg_immed         0x00000011,accg0
675
        test_acc_immed  0x11111111,acc0
676
        test_accg_immed         0x00000022,accg1
677
        test_acc_immed  0x22222222,acc1
678
        test_accg_immed         0x00000033,accg2
679
        test_acc_immed  0x33333333,acc2
680
        test_accg_immed         0x00000044,accg3
681
        test_acc_immed  0x44444444,acc3
682
 
683
        set_accg_immed  0xff,accg0              ; saturation
684
        set_acc_immed   0xffffffff,acc0
685
        set_accg_immed  0xff,accg1
686
        set_acc_immed   0xffffffff,acc1
687
        set_accg_immed  0xff,accg2              ; saturation
688
        set_acc_immed   0xffffffff,acc2
689
        set_accg_immed  0xff,accg3
690
        set_acc_immed   0xffffffff,acc3
691
        set_fr_iimmed   1,1,fr8
692
        set_fr_iimmed   1,1,fr10
693
        set_fr_iimmed   1,1,fr9
694
        set_fr_iimmed   1,1,fr11
695
        cmqmachu        fr8,fr10,acc0,cc6,0
696
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
697
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
698
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
699
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
700
        test_accg_immed         0xff,accg0              ; saturation
701
        test_acc_immed  0xffffffff,acc0
702
        test_accg_immed         0xff,accg1
703
        test_acc_immed  0xffffffff,acc1
704
        test_accg_immed         0xff,accg2              ; saturation
705
        test_acc_immed  0xffffffff,acc2
706
        test_accg_immed         0xff,accg3
707
        test_acc_immed  0xffffffff,acc3
708
 
709
        set_fr_iimmed   0xffff,0x0000,fr8
710
        set_fr_iimmed   0xffff,0xffff,fr10
711
        set_fr_iimmed   0x0000,0xffff,fr9
712
        set_fr_iimmed   0xffff,0xffff,fr11
713
        cmqmachu        fr8,fr10,acc0,cc6,1
714
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
715
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
716
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
717
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
718
        test_accg_immed         0xff,accg0              ; saturation
719
        test_acc_immed  0xffffffff,acc0
720
        test_accg_immed         0xff,accg1
721
        test_acc_immed  0xffffffff,acc1
722
        test_accg_immed         0xff,accg2              ; saturation
723
        test_acc_immed  0xffffffff,acc2
724
        test_accg_immed         0xff,accg3
725
        test_acc_immed  0xffffffff,acc3
726
;
727
        set_spr_immed   0,msr0
728
        set_accg_immed  0x00000011,accg0
729
        set_acc_immed   0x11111111,acc0
730
        set_accg_immed  0x00000022,accg1
731
        set_acc_immed   0x22222222,acc1
732
        set_accg_immed  0x00000033,accg2
733
        set_acc_immed   0x33333333,acc2
734
        set_accg_immed  0x00000044,accg3
735
        set_acc_immed   0x44444444,acc3
736
        set_fr_iimmed   3,2,fr8         ; multiply small numbers
737
        set_fr_iimmed   2,3,fr10
738
        set_fr_iimmed   1,2,fr9         ; multiply by 1
739
        set_fr_iimmed   2,1,fr11
740
        cmqmachu        fr8,fr10,acc0,cc3,1
741
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
742
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
743
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
744
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
745
        test_accg_immed         0x00000011,accg0
746
        test_acc_immed  0x11111111,acc0
747
        test_accg_immed         0x00000022,accg1
748
        test_acc_immed  0x22222222,acc1
749
        test_accg_immed         0x00000033,accg2
750
        test_acc_immed  0x33333333,acc2
751
        test_accg_immed         0x00000044,accg3
752
        test_acc_immed  0x44444444,acc3
753
 
754
        set_fr_iimmed   0,2,fr8         ; multiply by 0
755
        set_fr_iimmed   2,0,fr10
756
        set_fr_iimmed   0x3fff,2,fr9    ; 15 bit result
757
        set_fr_iimmed   2,0x3fff,fr11
758
        cmqmachu        fr8,fr10,acc0,cc3,0
759
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
760
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
761
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
762
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
763
        test_accg_immed         0x00000011,accg0
764
        test_acc_immed  0x11111111,acc0
765
        test_accg_immed         0x00000022,accg1
766
        test_acc_immed  0x22222222,acc1
767
        test_accg_immed         0x00000033,accg2
768
        test_acc_immed  0x33333333,acc2
769
        test_accg_immed         0x00000044,accg3
770
        test_acc_immed  0x44444444,acc3
771
 
772
        set_fr_iimmed   0x4000,2,fr8    ; 16 bit result
773
        set_fr_iimmed   2,0x4000,fr10
774
        set_fr_iimmed   0x8000,2,fr9    ; 17 bit result
775
        set_fr_iimmed   2,0x8000,fr11
776
        cmqmachu        fr8,fr10,acc0,cc3,1
777
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
778
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
779
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
780
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
781
        test_accg_immed         0x00000011,accg0
782
        test_acc_immed  0x11111111,acc0
783
        test_accg_immed         0x00000022,accg1
784
        test_acc_immed  0x22222222,acc1
785
        test_accg_immed         0x00000033,accg2
786
        test_acc_immed  0x33333333,acc2
787
        test_accg_immed         0x00000044,accg3
788
        test_acc_immed  0x44444444,acc3
789
 
790
        set_fr_iimmed   0x7fff,0x7fff,fr8       ; max positive result
791
        set_fr_iimmed   0x7fff,0x7fff,fr10
792
        set_fr_iimmed   0x8000,0x8000,fr9       ; max positive result
793
        set_fr_iimmed   0x8000,0x8000,fr11
794
        cmqmachu        fr8,fr10,acc0,cc7,0
795
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
796
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
797
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
798
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
799
        test_accg_immed         0x00000011,accg0
800
        test_acc_immed  0x11111111,acc0
801
        test_accg_immed         0x00000022,accg1
802
        test_acc_immed  0x22222222,acc1
803
        test_accg_immed         0x00000033,accg2
804
        test_acc_immed  0x33333333,acc2
805
        test_accg_immed         0x00000044,accg3
806
        test_acc_immed  0x44444444,acc3
807
 
808
        set_fr_iimmed   0xffff,0xffff,fr8       ; max positive result
809
        set_fr_iimmed   0xffff,0xffff,fr10
810
        set_fr_iimmed   0xffff,0xffff,fr9       ; max positive result
811
        set_fr_iimmed   0xffff,0xffff,fr11
812
        cmqmachu        fr8,fr10,acc0,cc7,1
813
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
814
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
815
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
816
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
817
        test_accg_immed         0x00000011,accg0
818
        test_acc_immed  0x11111111,acc0
819
        test_accg_immed         0x00000022,accg1
820
        test_acc_immed  0x22222222,acc1
821
        test_accg_immed         0x00000033,accg2
822
        test_acc_immed  0x33333333,acc2
823
        test_accg_immed         0x00000044,accg3
824
        test_acc_immed  0x44444444,acc3
825
 
826
        set_accg_immed  0xff,accg0              ; saturation
827
        set_acc_immed   0xffffffff,acc0
828
        set_accg_immed  0xff,accg1
829
        set_acc_immed   0xffffffff,acc1
830
        set_accg_immed  0xff,accg2              ; saturation
831
        set_acc_immed   0xffffffff,acc2
832
        set_accg_immed  0xff,accg3
833
        set_acc_immed   0xffffffff,acc3
834
        set_fr_iimmed   1,1,fr8
835
        set_fr_iimmed   1,1,fr10
836
        set_fr_iimmed   1,1,fr9
837
        set_fr_iimmed   1,1,fr11
838
        cmqmachu        fr8,fr10,acc0,cc7,0
839
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
840
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
841
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
842
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
843
        test_accg_immed         0xff,accg0              ; saturation
844
        test_acc_immed  0xffffffff,acc0
845
        test_accg_immed         0xff,accg1
846
        test_acc_immed  0xffffffff,acc1
847
        test_accg_immed         0xff,accg2              ; saturation
848
        test_acc_immed  0xffffffff,acc2
849
        test_accg_immed         0xff,accg3
850
        test_acc_immed  0xffffffff,acc3
851
 
852
        set_fr_iimmed   0xffff,0x0000,fr8
853
        set_fr_iimmed   0xffff,0xffff,fr10
854
        set_fr_iimmed   0x0000,0xffff,fr9
855
        set_fr_iimmed   0xffff,0xffff,fr11
856
        cmqmachu        fr8,fr10,acc0,cc7,1
857
        test_spr_bits   0x3c,2,0,msr0           ; msr0.sie is clear
858
        test_spr_bits   2,1,0,msr0              ; msr0.ovf not set
859
        test_spr_bits   1,0,0,msr0              ; msr0.aovf not set
860
        test_spr_bits   0x7000,12,1,msr0        ; msr0.mtt always set
861
        test_accg_immed         0xff,accg0              ; saturation
862
        test_acc_immed  0xffffffff,acc0
863
        test_accg_immed         0xff,accg1
864
        test_acc_immed  0xffffffff,acc1
865
        test_accg_immed         0xff,accg2              ; saturation
866
        test_acc_immed  0xffffffff,acc2
867
        test_accg_immed         0xff,accg3
868
        test_acc_immed  0xffffffff,acc3
869
 
870
        pass

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.