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