1# frv testcase for cfmovs $FRj,$FRk,$CCi,$cond
2# mach: fr500 fr550 frv
3
4	.include "testutils.inc"
5
6	float_constants
7	start
8	load_float_constants
9
10	.global cfmovs
11cfmovs:
12	set_spr_immed	0x1b1b,cccr
13
14	cfmovs		fr0,fr1,cc0,1
15	test_fr_fr	fr0,fr1
16	cfmovs		fr4,fr1,cc0,1
17	test_fr_fr	fr4,fr1
18	cfmovs		fr8,fr1,cc0,1
19	test_fr_fr	fr8,fr1
20	cfmovs		fr12,fr1,cc0,1
21	test_fr_fr	fr12,fr1
22	cfmovs		fr16,fr1,cc0,1
23	test_fr_fr	fr16,fr1
24	cfmovs		fr20,fr1,cc0,1
25	test_fr_fr	fr20,fr1
26	cfmovs		fr24,fr1,cc0,1
27	test_fr_fr	fr24,fr1
28	cfmovs		fr28,fr1,cc0,1
29	test_fr_fr	fr28,fr1
30	cfmovs		fr32,fr1,cc4,1
31	test_fr_fr	fr32,fr1
32	cfmovs		fr36,fr1,cc4,1
33	test_fr_fr	fr36,fr1
34	cfmovs		fr40,fr1,cc4,1
35	test_fr_fr	fr40,fr1
36	cfmovs		fr44,fr1,cc4,1
37	test_fr_fr	fr44,fr1
38	cfmovs		fr48,fr1,cc4,1
39	test_fr_fr	fr48,fr1
40	cfmovs		fr52,fr1,cc4,1
41	test_fr_fr	fr52,fr1
42	cfmovs		fr56,fr1,cc4,1
43	test_fr_iimmed	0x7fc00000,fr1
44	cfmovs		fr60,fr1,cc4,1
45	test_fr_iimmed	0x7f800001,fr1
46
47	cfmovs		fr0,fr1,cc1,0
48	test_fr_fr	fr0,fr1
49	cfmovs		fr4,fr1,cc1,0
50	test_fr_fr	fr4,fr1
51	cfmovs		fr8,fr1,cc1,0
52	test_fr_fr	fr8,fr1
53	cfmovs		fr12,fr1,cc1,0
54	test_fr_fr	fr12,fr1
55	cfmovs		fr16,fr1,cc1,0
56	test_fr_fr	fr16,fr1
57	cfmovs		fr20,fr1,cc1,0
58	test_fr_fr	fr20,fr1
59	cfmovs		fr24,fr1,cc1,0
60	test_fr_fr	fr24,fr1
61	cfmovs		fr28,fr1,cc1,0
62	test_fr_fr	fr28,fr1
63	cfmovs		fr32,fr1,cc5,0
64	test_fr_fr	fr32,fr1
65	cfmovs		fr36,fr1,cc5,0
66	test_fr_fr	fr36,fr1
67	cfmovs		fr40,fr1,cc5,0
68	test_fr_fr	fr40,fr1
69	cfmovs		fr44,fr1,cc5,0
70	test_fr_fr	fr44,fr1
71	cfmovs		fr48,fr1,cc5,0
72	test_fr_fr	fr48,fr1
73	cfmovs		fr52,fr1,cc5,0
74	test_fr_fr	fr52,fr1
75	cfmovs		fr56,fr1,cc5,0
76	test_fr_iimmed	0x7fc00000,fr1
77	cfmovs		fr60,fr1,cc5,0
78	test_fr_iimmed	0x7f800001,fr1
79
80	set_fr_iimmed	0xdead,0xbeef,fr1
81	cfmovs		fr0,fr1,cc0,0
82	test_fr_iimmed	0xdeadbeef,fr1
83	cfmovs		fr4,fr1,cc0,0
84	test_fr_iimmed	0xdeadbeef,fr1
85	cfmovs		fr8,fr1,cc0,0
86	test_fr_iimmed	0xdeadbeef,fr1
87	cfmovs		fr12,fr1,cc0,0
88	test_fr_iimmed	0xdeadbeef,fr1
89	cfmovs		fr16,fr1,cc0,0
90	test_fr_iimmed	0xdeadbeef,fr1
91	cfmovs		fr20,fr1,cc0,0
92	test_fr_iimmed	0xdeadbeef,fr1
93	cfmovs		fr24,fr1,cc0,0
94	test_fr_iimmed	0xdeadbeef,fr1
95	cfmovs		fr28,fr1,cc0,0
96	test_fr_iimmed	0xdeadbeef,fr1
97	cfmovs		fr32,fr1,cc4,0
98	test_fr_iimmed	0xdeadbeef,fr1
99	cfmovs		fr36,fr1,cc4,0
100	test_fr_iimmed	0xdeadbeef,fr1
101	cfmovs		fr40,fr1,cc4,0
102	test_fr_iimmed	0xdeadbeef,fr1
103	cfmovs		fr44,fr1,cc4,0
104	test_fr_iimmed	0xdeadbeef,fr1
105	cfmovs		fr48,fr1,cc4,0
106	test_fr_iimmed	0xdeadbeef,fr1
107	cfmovs		fr52,fr1,cc4,0
108	test_fr_iimmed	0xdeadbeef,fr1
109	cfmovs		fr56,fr1,cc4,0
110	test_fr_iimmed	0xdeadbeef,fr1
111	cfmovs		fr60,fr1,cc4,0
112	test_fr_iimmed	0xdeadbeef,fr1
113
114	set_fr_iimmed	0xdead,0xbeef,fr1
115	cfmovs		fr0,fr1,cc1,1
116	test_fr_iimmed	0xdeadbeef,fr1
117	cfmovs		fr4,fr1,cc1,1
118	test_fr_iimmed	0xdeadbeef,fr1
119	cfmovs		fr8,fr1,cc1,1
120	test_fr_iimmed	0xdeadbeef,fr1
121	cfmovs		fr12,fr1,cc1,1
122	test_fr_iimmed	0xdeadbeef,fr1
123	cfmovs		fr16,fr1,cc1,1
124	test_fr_iimmed	0xdeadbeef,fr1
125	cfmovs		fr20,fr1,cc1,1
126	test_fr_iimmed	0xdeadbeef,fr1
127	cfmovs		fr24,fr1,cc1,1
128	test_fr_iimmed	0xdeadbeef,fr1
129	cfmovs		fr28,fr1,cc1,1
130	test_fr_iimmed	0xdeadbeef,fr1
131	cfmovs		fr32,fr1,cc5,1
132	test_fr_iimmed	0xdeadbeef,fr1
133	cfmovs		fr36,fr1,cc5,1
134	test_fr_iimmed	0xdeadbeef,fr1
135	cfmovs		fr40,fr1,cc5,1
136	test_fr_iimmed	0xdeadbeef,fr1
137	cfmovs		fr44,fr1,cc5,1
138	test_fr_iimmed	0xdeadbeef,fr1
139	cfmovs		fr48,fr1,cc5,1
140	test_fr_iimmed	0xdeadbeef,fr1
141	cfmovs		fr52,fr1,cc5,1
142	test_fr_iimmed	0xdeadbeef,fr1
143	cfmovs		fr56,fr1,cc5,1
144	test_fr_iimmed	0xdeadbeef,fr1
145	cfmovs		fr60,fr1,cc5,1
146	test_fr_iimmed	0xdeadbeef,fr1
147
148	set_fr_iimmed	0xdead,0xbeef,fr1
149	cfmovs		fr0,fr1,cc2,1
150	test_fr_iimmed	0xdeadbeef,fr1
151	cfmovs		fr4,fr1,cc2,0
152	test_fr_iimmed	0xdeadbeef,fr1
153	cfmovs		fr8,fr1,cc2,1
154	test_fr_iimmed	0xdeadbeef,fr1
155	cfmovs		fr12,fr1,cc2,0
156	test_fr_iimmed	0xdeadbeef,fr1
157	cfmovs		fr16,fr1,cc2,1
158	test_fr_iimmed	0xdeadbeef,fr1
159	cfmovs		fr20,fr1,cc2,0
160	test_fr_iimmed	0xdeadbeef,fr1
161	cfmovs		fr24,fr1,cc2,1
162	test_fr_iimmed	0xdeadbeef,fr1
163	cfmovs		fr28,fr1,cc2,0
164	test_fr_iimmed	0xdeadbeef,fr1
165	cfmovs		fr32,fr1,cc6,1
166	test_fr_iimmed	0xdeadbeef,fr1
167	cfmovs		fr36,fr1,cc6,0
168	test_fr_iimmed	0xdeadbeef,fr1
169	cfmovs		fr40,fr1,cc6,1
170	test_fr_iimmed	0xdeadbeef,fr1
171	cfmovs		fr44,fr1,cc6,0
172	test_fr_iimmed	0xdeadbeef,fr1
173	cfmovs		fr48,fr1,cc6,1
174	test_fr_iimmed	0xdeadbeef,fr1
175	cfmovs		fr52,fr1,cc6,0
176	test_fr_iimmed	0xdeadbeef,fr1
177	cfmovs		fr56,fr1,cc6,1
178	test_fr_iimmed	0xdeadbeef,fr1
179	cfmovs		fr60,fr1,cc6,0
180	test_fr_iimmed	0xdeadbeef,fr1
181
182	set_fr_iimmed	0xdead,0xbeef,fr1
183	cfmovs		fr0,fr1,cc3,1
184	test_fr_iimmed	0xdeadbeef,fr1
185	cfmovs		fr4,fr1,cc3,0
186	test_fr_iimmed	0xdeadbeef,fr1
187	cfmovs		fr8,fr1,cc3,1
188	test_fr_iimmed	0xdeadbeef,fr1
189	cfmovs		fr12,fr1,cc3,0
190	test_fr_iimmed	0xdeadbeef,fr1
191	cfmovs		fr16,fr1,cc3,1
192	test_fr_iimmed	0xdeadbeef,fr1
193	cfmovs		fr20,fr1,cc3,0
194	test_fr_iimmed	0xdeadbeef,fr1
195	cfmovs		fr24,fr1,cc3,1
196	test_fr_iimmed	0xdeadbeef,fr1
197	cfmovs		fr28,fr1,cc3,0
198	test_fr_iimmed	0xdeadbeef,fr1
199	cfmovs		fr32,fr1,cc7,1
200	test_fr_iimmed	0xdeadbeef,fr1
201	cfmovs		fr36,fr1,cc7,0
202	test_fr_iimmed	0xdeadbeef,fr1
203	cfmovs		fr40,fr1,cc7,1
204	test_fr_iimmed	0xdeadbeef,fr1
205	cfmovs		fr44,fr1,cc7,0
206	test_fr_iimmed	0xdeadbeef,fr1
207	cfmovs		fr48,fr1,cc7,1
208	test_fr_iimmed	0xdeadbeef,fr1
209	cfmovs		fr52,fr1,cc7,0
210	test_fr_iimmed	0xdeadbeef,fr1
211	cfmovs		fr56,fr1,cc7,1
212	test_fr_iimmed	0xdeadbeef,fr1
213	cfmovs		fr60,fr1,cc7,0
214	test_fr_iimmed	0xdeadbeef,fr1
215
216	pass
217