xref: /netbsd-src/external/gpl3/gdb/dist/sim/testsuite/frv/fr550/cmcpxiu.cgs (revision a45db23f655e22f0c2354600d3b3c2cb98abf2dc)
1# frv testcase for cmcpxiu $GRi,$GRj,$GRk,$CCi,$cond
2# mach: all
3
4	.include "../testutils.inc"
5
6	start
7
8	.global cmcpxiu
9cmcpxiu:
10	set_spr_immed	0x1b1b,cccr
11
12	set_fr_iimmed  	4,2,fr7		; multiply small numbers
13	set_fr_iimmed  	3,5,fr8
14	cmcpxiu      	fr7,fr8,acc0,cc0,1
15	test_accg_immed 	0,accg0
16	test_acc_immed 	26,acc0
17
18	set_fr_iimmed  	1,2,fr7		; multiply by 1
19	set_fr_iimmed  	1,3,fr8
20	cmcpxiu      	fr7,fr8,acc0,cc0,1
21	test_accg_immed 	0,accg0
22	test_acc_immed 	5,acc0
23
24	set_fr_iimmed  	0,2,fr7		; multiply by 0
25	set_fr_iimmed  	0,2,fr8
26	cmcpxiu      	fr7,fr8,acc0,cc0,1
27	test_accg_immed 	0,accg0
28	test_acc_immed 	0,acc0
29
30	set_fr_iimmed 	0x3fff,1,fr7	; 15 bit result
31	set_fr_iimmed  	0x0001,2,fr8
32	cmcpxiu      	fr7,fr8,acc0,cc0,1
33	test_accg_immed 	0,accg0
34	test_acc_limmed	0x0000,0x7fff,acc0
35
36	set_fr_iimmed  	0x4000,1,fr7	; 16 bit result
37	set_fr_iimmed  	0x0001,2,fr8
38	cmcpxiu      	fr7,fr8,acc0,cc0,1
39	test_accg_immed 	0,accg0
40	test_acc_limmed	0x0000,0x8001,acc0
41
42	set_fr_iimmed  	0x4000,1,fr7	; 17 bit result
43	set_fr_iimmed  	0x0001,4,fr8
44	cmcpxiu      	fr7,fr8,acc0,cc0,1
45	test_accg_immed 	0,accg0
46	test_acc_immed 	0x00010001,acc0
47
48	set_fr_iimmed  	0x7fff,0x0000,fr7	; max positive result
49	set_fr_iimmed  	0x7fff,0x7fff,fr8
50	cmcpxiu      	fr7,fr8,acc0,cc4,1
51	test_accg_immed 	0,accg0
52	test_acc_immed 	0x3fff0001,acc0
53
54	set_fr_iimmed  	0x8000,0x8000,fr7	; max positive result
55	set_fr_iimmed  	0x0000,0x8000,fr8
56	cmcpxiu      	fr7,fr8,acc0,cc4,1
57	test_accg_immed 	0,accg0
58	test_acc_limmed	0x4000,0x0000,acc0
59
60	set_fr_iimmed  	0xffff,0x0000,fr7	; max positive result
61	set_fr_iimmed  	0xffff,0xffff,fr8
62	cmcpxiu      	fr7,fr8,acc0,cc4,1
63	test_accg_immed 	0,accg0
64	test_acc_limmed	0xfffe,0x0001,acc0
65
66	set_fr_iimmed  	0xfffe,0xffff,fr7	; almost max positive result
67	set_fr_iimmed  	0xffff,0xffff,fr8
68	cmcpxiu      	fr7,fr8,acc0,cc4,1
69	test_accg_immed 1,accg0
70	test_acc_immed	0xfffb0003,acc0
71
72	set_fr_iimmed  	0xffff,0xffff,fr7	; max positive result
73	set_fr_iimmed  	0xffff,0xffff,fr8
74	cmcpxiu      	fr7,fr8,acc0,cc4,1
75	test_accg_immed 1,accg0
76	test_acc_immed	0xfffc0002,acc0
77
78	set_fr_iimmed  	4,2,fr7		; multiply small numbers
79	set_fr_iimmed  	3,5,fr8
80	cmcpxiu      	fr7,fr8,acc0,cc1,0
81	test_accg_immed 	0,accg0
82	test_acc_immed 	26,acc0
83
84	set_fr_iimmed  	1,2,fr7		; multiply by 1
85	set_fr_iimmed  	1,3,fr8
86	cmcpxiu      	fr7,fr8,acc0,cc1,0
87	test_accg_immed 	0,accg0
88	test_acc_immed 	5,acc0
89
90	set_fr_iimmed  	0,2,fr7		; multiply by 0
91	set_fr_iimmed  	0,2,fr8
92	cmcpxiu      	fr7,fr8,acc0,cc1,0
93	test_accg_immed 	0,accg0
94	test_acc_immed 	0,acc0
95
96	set_fr_iimmed 	0x3fff,1,fr7	; 15 bit result
97	set_fr_iimmed  	0x0001,2,fr8
98	cmcpxiu      	fr7,fr8,acc0,cc1,0
99	test_accg_immed 	0,accg0
100	test_acc_limmed	0x0000,0x7fff,acc0
101
102	set_fr_iimmed  	0x4000,1,fr7	; 16 bit result
103	set_fr_iimmed  	0x0001,2,fr8
104	cmcpxiu      	fr7,fr8,acc0,cc1,0
105	test_accg_immed 	0,accg0
106	test_acc_limmed	0x0000,0x8001,acc0
107
108	set_fr_iimmed  	0x4000,1,fr7	; 17 bit result
109	set_fr_iimmed  	0x0001,4,fr8
110	cmcpxiu      	fr7,fr8,acc0,cc1,0
111	test_accg_immed 	0,accg0
112	test_acc_immed 	0x00010001,acc0
113
114	set_fr_iimmed  	0x7fff,0x0000,fr7	; max positive result
115	set_fr_iimmed  	0x7fff,0x7fff,fr8
116	cmcpxiu      	fr7,fr8,acc0,cc5,0
117	test_accg_immed 	0,accg0
118	test_acc_immed 	0x3fff0001,acc0
119
120	set_fr_iimmed  	0x8000,0x8000,fr7	; max positive result
121	set_fr_iimmed  	0x0000,0x8000,fr8
122	cmcpxiu      	fr7,fr8,acc0,cc5,0
123	test_accg_immed 	0,accg0
124	test_acc_limmed	0x4000,0x0000,acc0
125
126	set_fr_iimmed  	0xffff,0x0000,fr7	; max positive result
127	set_fr_iimmed  	0xffff,0xffff,fr8
128	cmcpxiu      	fr7,fr8,acc0,cc5,0
129	test_accg_immed 	0,accg0
130	test_acc_limmed	0xfffe,0x0001,acc0
131
132	set_fr_iimmed  	0xfffe,0xffff,fr7	; almost max positive result
133	set_fr_iimmed  	0xffff,0xffff,fr8
134	cmcpxiu      	fr7,fr8,acc0,cc5,0
135	test_accg_immed 1,accg0
136	test_acc_immed	0xfffb0003,acc0
137
138	set_fr_iimmed  	0xffff,0xffff,fr7	; max positive result
139	set_fr_iimmed  	0xffff,0xffff,fr8
140	cmcpxiu      	fr7,fr8,acc0,cc5,0
141	test_accg_immed 1,accg0
142	test_acc_immed	0xfffc0002,acc0
143
144	set_accg_immed 	0x00000011,accg0
145	set_acc_immed 	0x11111111,acc0
146	set_fr_iimmed  	4,2,fr7		; multiply small numbers
147	set_fr_iimmed  	3,5,fr8
148	cmcpxiu      	fr7,fr8,acc0,cc0,0
149	test_accg_immed 	0x00000011,accg0
150	test_acc_immed 	0x11111111,acc0
151
152	set_fr_iimmed  	1,2,fr7		; multiply by 1
153	set_fr_iimmed  	1,3,fr8
154	cmcpxiu      	fr7,fr8,acc0,cc0,0
155	test_accg_immed 	0x00000011,accg0
156	test_acc_immed 	0x11111111,acc0
157
158	set_fr_iimmed  	0,2,fr7		; multiply by 0
159	set_fr_iimmed  	0,2,fr8
160	cmcpxiu      	fr7,fr8,acc0,cc0,0
161	test_accg_immed 	0x00000011,accg0
162	test_acc_immed 	0x11111111,acc0
163
164	set_fr_iimmed 	0x3fff,1,fr7	; 15 bit result
165	set_fr_iimmed  	0x0001,2,fr8
166	cmcpxiu      	fr7,fr8,acc0,cc0,0
167	test_accg_immed 	0x00000011,accg0
168	test_acc_immed 	0x11111111,acc0
169
170	set_fr_iimmed  	0x4000,1,fr7	; 16 bit result
171	set_fr_iimmed  	0x0001,4,fr8
172	cmcpxiu      	fr7,fr8,acc0,cc0,0
173	test_accg_immed 	0x00000011,accg0
174	test_acc_immed 	0x11111111,acc0
175
176	set_fr_iimmed  	0x8000,1,fr7	; 17 bit result
177	set_fr_iimmed  	0x0001,4,fr8
178	cmcpxiu      	fr7,fr8,acc0,cc0,0
179	test_accg_immed 	0x00000011,accg0
180	test_acc_immed 	0x11111111,acc0
181
182	set_fr_iimmed  	0x7fff,0x0000,fr7	; max positive result
183	set_fr_iimmed  	0x7fff,0x7fff,fr8
184	cmcpxiu      	fr7,fr8,acc0,cc4,0
185	test_accg_immed 	0x00000011,accg0
186	test_acc_immed 	0x11111111,acc0
187
188	set_fr_iimmed  	0x8000,0x8000,fr7	; max positive result
189	set_fr_iimmed  	0x0000,0x8000,fr8
190	cmcpxiu      	fr7,fr8,acc0,cc4,0
191	test_accg_immed 	0x00000011,accg0
192	test_acc_immed 	0x11111111,acc0
193
194	set_fr_iimmed  	0xffff,0x0000,fr7	; max positive result
195	set_fr_iimmed  	0xffff,0xffff,fr8
196	cmcpxiu      	fr7,fr8,acc0,cc4,0
197	test_accg_immed 	0x00000011,accg0
198	test_acc_immed 	0x11111111,acc0
199
200	set_spr_immed	0,msr0
201	set_fr_iimmed  	0x0000,0x0001,fr7	; saturation
202	set_fr_iimmed  	0x0001,0xffff,fr8
203	cmcpxiu      	fr7,fr8,acc0,cc4,0
204	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
205	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
206	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
207	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
208	test_accg_immed 	0x00000011,accg0
209	test_acc_immed 	0x11111111,acc0
210
211	set_fr_iimmed  	0x0000,0xffff,fr7	; saturation
212	set_fr_iimmed  	0xffff,0xffff,fr8
213	cmcpxiu      	fr7,fr8,acc0,cc4,0
214	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
215	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
216	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
217	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
218	test_accg_immed 	0x00000011,accg0
219	test_acc_immed 	0x11111111,acc0
220
221	set_fr_iimmed  	0xfffe,0xffff,fr7	; saturation
222	set_fr_iimmed  	0xffff,0xffff,fr8
223	cmcpxiu      	fr7,fr8,acc0,cc4,0
224	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
225	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
226	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
227	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
228	test_accg_immed 	0x00000011,accg0
229	test_acc_immed 	0x11111111,acc0
230
231	set_accg_immed 	0x00000011,accg0
232	set_acc_immed 	0x11111111,acc0
233	set_fr_iimmed  	4,2,fr7		; multiply small numbers
234	set_fr_iimmed  	3,5,fr8
235	cmcpxiu      	fr7,fr8,acc0,cc1,1
236	test_accg_immed 	0x00000011,accg0
237	test_acc_immed 	0x11111111,acc0
238
239	set_fr_iimmed  	1,2,fr7		; multiply by 1
240	set_fr_iimmed  	1,3,fr8
241	cmcpxiu      	fr7,fr8,acc0,cc1,1
242	test_accg_immed 	0x00000011,accg0
243	test_acc_immed 	0x11111111,acc0
244
245	set_fr_iimmed  	0,2,fr7		; multiply by 0
246	set_fr_iimmed  	0,2,fr8
247	cmcpxiu      	fr7,fr8,acc0,cc1,1
248	test_accg_immed 	0x00000011,accg0
249	test_acc_immed 	0x11111111,acc0
250
251	set_fr_iimmed 	0x3fff,1,fr7	; 15 bit result
252	set_fr_iimmed  	0x0001,2,fr8
253	cmcpxiu      	fr7,fr8,acc0,cc1,1
254	test_accg_immed 	0x00000011,accg0
255	test_acc_immed 	0x11111111,acc0
256
257	set_fr_iimmed  	0x4000,1,fr7	; 16 bit result
258	set_fr_iimmed  	0x0001,4,fr8
259	cmcpxiu      	fr7,fr8,acc0,cc1,1
260	test_accg_immed 	0x00000011,accg0
261	test_acc_immed 	0x11111111,acc0
262
263	set_fr_iimmed  	0x8000,1,fr7	; 17 bit result
264	set_fr_iimmed  	0x0001,4,fr8
265	cmcpxiu      	fr7,fr8,acc0,cc1,1
266	test_accg_immed 	0x00000011,accg0
267	test_acc_immed 	0x11111111,acc0
268
269	set_fr_iimmed  	0x7fff,0x0000,fr7	; max positive result
270	set_fr_iimmed  	0x7fff,0x7fff,fr8
271	cmcpxiu      	fr7,fr8,acc0,cc5,1
272	test_accg_immed 	0x00000011,accg0
273	test_acc_immed 	0x11111111,acc0
274
275	set_fr_iimmed  	0x8000,0x8000,fr7	; max positive result
276	set_fr_iimmed  	0x0000,0x8000,fr8
277	cmcpxiu      	fr7,fr8,acc0,cc5,1
278	test_accg_immed 	0x00000011,accg0
279	test_acc_immed 	0x11111111,acc0
280
281	set_fr_iimmed  	0xffff,0x0000,fr7	; max positive result
282	set_fr_iimmed  	0xffff,0xffff,fr8
283	cmcpxiu      	fr7,fr8,acc0,cc5,1
284	test_accg_immed 	0x00000011,accg0
285	test_acc_immed 	0x11111111,acc0
286
287	set_spr_immed	0,msr0
288	set_fr_iimmed  	0x0000,0x0001,fr7	; saturation
289	set_fr_iimmed  	0x0001,0xffff,fr8
290	cmcpxiu      	fr7,fr8,acc0,cc5,1
291	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
292	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
293	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
294	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
295	test_accg_immed 	0x00000011,accg0
296	test_acc_immed 	0x11111111,acc0
297
298	set_fr_iimmed  	0x0000,0xffff,fr7	; saturation
299	set_fr_iimmed  	0xffff,0xffff,fr8
300	cmcpxiu      	fr7,fr8,acc0,cc5,1
301	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
302	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
303	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
304	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
305	test_accg_immed 	0x00000011,accg0
306	test_acc_immed 	0x11111111,acc0
307
308	set_fr_iimmed  	0xfffe,0xffff,fr7	; saturation
309	set_fr_iimmed  	0xffff,0xffff,fr8
310	cmcpxiu      	fr7,fr8,acc0,cc5,1
311	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
312	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
313	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
314	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
315	test_accg_immed 	0x00000011,accg0
316	test_acc_immed 	0x11111111,acc0
317
318	set_accg_immed 	0x00000011,accg0
319	set_acc_immed 	0x11111111,acc0
320	set_fr_iimmed  	4,2,fr7		; multiply small numbers
321	set_fr_iimmed  	3,5,fr8
322	cmcpxiu      	fr7,fr8,acc0,cc2,1
323	test_accg_immed 	0x00000011,accg0
324	test_acc_immed 	0x11111111,acc0
325
326	set_fr_iimmed  	1,2,fr7		; multiply by 1
327	set_fr_iimmed  	1,3,fr8
328	cmcpxiu      	fr7,fr8,acc0,cc2,0
329	test_accg_immed 	0x00000011,accg0
330	test_acc_immed 	0x11111111,acc0
331
332	set_fr_iimmed  	0,2,fr7		; multiply by 0
333	set_fr_iimmed  	0,2,fr8
334	cmcpxiu      	fr7,fr8,acc0,cc2,1
335	test_accg_immed 	0x00000011,accg0
336	test_acc_immed 	0x11111111,acc0
337
338	set_fr_iimmed 	0x3fff,1,fr7	; 15 bit result
339	set_fr_iimmed  	0x0001,2,fr8
340	cmcpxiu      	fr7,fr8,acc0,cc2,0
341	test_accg_immed 	0x00000011,accg0
342	test_acc_immed 	0x11111111,acc0
343
344	set_fr_iimmed  	0x4000,1,fr7	; 16 bit result
345	set_fr_iimmed  	0x0001,4,fr8
346	cmcpxiu      	fr7,fr8,acc0,cc2,1
347	test_accg_immed 	0x00000011,accg0
348	test_acc_immed 	0x11111111,acc0
349
350	set_fr_iimmed  	0x8000,1,fr7	; 17 bit result
351	set_fr_iimmed  	0x0001,4,fr8
352	cmcpxiu      	fr7,fr8,acc0,cc2,0
353	test_accg_immed 	0x00000011,accg0
354	test_acc_immed 	0x11111111,acc0
355
356	set_fr_iimmed  	0x7fff,0x0000,fr7	; max positive result
357	set_fr_iimmed  	0x7fff,0x7fff,fr8
358	cmcpxiu      	fr7,fr8,acc0,cc6,1
359	test_accg_immed 	0x00000011,accg0
360	test_acc_immed 	0x11111111,acc0
361
362	set_fr_iimmed  	0x8000,0x8000,fr7	; max positive result
363	set_fr_iimmed  	0x0000,0x8000,fr8
364	cmcpxiu      	fr7,fr8,acc0,cc6,0
365	test_accg_immed 	0x00000011,accg0
366	test_acc_immed 	0x11111111,acc0
367
368	set_fr_iimmed  	0xffff,0x0000,fr7	; max positive result
369	set_fr_iimmed  	0xffff,0xffff,fr8
370	cmcpxiu      	fr7,fr8,acc0,cc6,1
371	test_accg_immed 	0x00000011,accg0
372	test_acc_immed 	0x11111111,acc0
373
374	set_spr_immed	0,msr0
375	set_fr_iimmed  	0x0000,0x0001,fr7	; saturation
376	set_fr_iimmed  	0x0001,0xffff,fr8
377	cmcpxiu      	fr7,fr8,acc0,cc6,0
378	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
379	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
380	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
381	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
382	test_accg_immed 	0x00000011,accg0
383	test_acc_immed 	0x11111111,acc0
384
385	set_fr_iimmed  	0x0000,0xffff,fr7	; saturation
386	set_fr_iimmed  	0xffff,0xffff,fr8
387	cmcpxiu      	fr7,fr8,acc0,cc6,1
388	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
389	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
390	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
391	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
392	test_accg_immed 	0x00000011,accg0
393	test_acc_immed 	0x11111111,acc0
394
395	set_fr_iimmed  	0xfffe,0xffff,fr7	; saturation
396	set_fr_iimmed  	0xffff,0xffff,fr8
397	cmcpxiu      	fr7,fr8,acc0,cc6,0
398	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
399	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
400	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
401	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
402	test_accg_immed 	0x00000011,accg0
403	test_acc_immed 	0x11111111,acc0
404
405	set_accg_immed 	0x00000011,accg0
406	set_acc_immed 	0x11111111,acc0
407	set_fr_iimmed  	4,2,fr7		; multiply small numbers
408	set_fr_iimmed  	3,5,fr8
409	cmcpxiu      	fr7,fr8,acc0,cc3,1
410	test_accg_immed 	0x00000011,accg0
411	test_acc_immed 	0x11111111,acc0
412
413	set_fr_iimmed  	1,2,fr7		; multiply by 1
414	set_fr_iimmed  	1,3,fr8
415	cmcpxiu      	fr7,fr8,acc0,cc3,0
416	test_accg_immed 	0x00000011,accg0
417	test_acc_immed 	0x11111111,acc0
418
419	set_fr_iimmed  	0,2,fr7		; multiply by 0
420	set_fr_iimmed  	0,2,fr8
421	cmcpxiu      	fr7,fr8,acc0,cc3,1
422	test_accg_immed 	0x00000011,accg0
423	test_acc_immed 	0x11111111,acc0
424
425	set_fr_iimmed 	0x3fff,1,fr7	; 15 bit result
426	set_fr_iimmed  	0x0001,2,fr8
427	cmcpxiu      	fr7,fr8,acc0,cc3,0
428	test_accg_immed 	0x00000011,accg0
429	test_acc_immed 	0x11111111,acc0
430
431	set_fr_iimmed  	0x4000,1,fr7	; 16 bit result
432	set_fr_iimmed  	0x0001,4,fr8
433	cmcpxiu      	fr7,fr8,acc0,cc3,1
434	test_accg_immed 	0x00000011,accg0
435	test_acc_immed 	0x11111111,acc0
436
437	set_fr_iimmed  	0x8000,1,fr7	; 17 bit result
438	set_fr_iimmed  	0x0001,4,fr8
439	cmcpxiu      	fr7,fr8,acc0,cc3,0
440	test_accg_immed 	0x00000011,accg0
441	test_acc_immed 	0x11111111,acc0
442
443	set_fr_iimmed  	0x7fff,0x0000,fr7	; max positive result
444	set_fr_iimmed  	0x7fff,0x7fff,fr8
445	cmcpxiu      	fr7,fr8,acc0,cc7,1
446	test_accg_immed 	0x00000011,accg0
447	test_acc_immed 	0x11111111,acc0
448
449	set_fr_iimmed  	0x8000,0x8000,fr7	; max positive result
450	set_fr_iimmed  	0x0000,0x8000,fr8
451	cmcpxiu      	fr7,fr8,acc0,cc7,0
452	test_accg_immed 	0x00000011,accg0
453	test_acc_immed 	0x11111111,acc0
454
455	set_fr_iimmed  	0xffff,0x0000,fr7	; max positive result
456	set_fr_iimmed  	0xffff,0xffff,fr8
457	cmcpxiu      	fr7,fr8,acc0,cc7,1
458	test_accg_immed 	0x00000011,accg0
459	test_acc_immed 	0x11111111,acc0
460
461	set_spr_immed	0,msr0
462	set_fr_iimmed  	0x0000,0x0001,fr7	; saturation
463	set_fr_iimmed  	0x0001,0xffff,fr8
464	cmcpxiu      	fr7,fr8,acc0,cc7,0
465	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
466	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
467	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
468	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
469	test_accg_immed 	0x00000011,accg0
470	test_acc_immed 	0x11111111,acc0
471
472	set_fr_iimmed  	0x0000,0xffff,fr7	; saturation
473	set_fr_iimmed  	0xffff,0xffff,fr8
474	cmcpxiu      	fr7,fr8,acc0,cc7,1
475	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
476	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
477	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
478	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
479	test_accg_immed 	0x00000011,accg0
480	test_acc_immed 	0x11111111,acc0
481
482	set_fr_iimmed  	0xfffe,0xffff,fr7	; saturation
483	set_fr_iimmed  	0xffff,0xffff,fr8
484	cmcpxiu      	fr7,fr8,acc0,cc7,0
485	test_spr_bits	0x3c,2,0x0,msr0		; msr0.sie is clear
486	test_spr_bits	2,1,0,msr0		; msr0.ovf is clear
487	test_spr_bits	1,0,0,msr0		; msr0.aovf is clear
488	test_spr_bits	0x7000,12,1,msr0	; msr0.mtt is clear
489	test_accg_immed 	0x00000011,accg0
490	test_acc_immed 	0x11111111,acc0
491
492	pass
493