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

Subversion Repositories openrisc_me

[/] [openrisc/] [tags/] [gdb/] [gdb-6.8/] [gdb-6.8.openrisc-2.1/] [sim/] [testsuite/] [sim/] [frv/] [cmqmachu.cgs] - Blame information for rev 33

Details | Compare with Previous | View Log

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

powered by: WebSVN 2.1.0

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