correctly set SR_EA bit for all vector physical tests
[riscv-tests.git] / isa / rv64uv / vsetvl.S
1 #*****************************************************************************
2 # vsetvl.S
3 #-----------------------------------------------------------------------------
4 #
5 # Test vsetvl instruction.
6 #
7
8 #include "riscv_test.h"
9 #include "test_macros.h"
10
11 RVTEST_RV64UV
12 RVTEST_CODE_BEGIN
13
14 #-------------------------------------------------------------
15 # Arithmetic tests
16 #-------------------------------------------------------------
17
18 #TEST_VSETVL( 2, 0, 0, 0xf8, 768, 768 );
19 #TEST_VSETVL( 3, 0, 0, 0xf8, 769, 768 );
20 #TEST_VSETVL( 4, 0, 0, 0xf8, 767, 767 );
21
22 TEST_VSETVL( 5, 0, 0, 0x00, 2048, 2048 );
23 TEST_VSETVL( 6, 0, 0, 0x00, 2049, 2048 );
24 TEST_VSETVL( 7, 0, 0, 0x00, 2047, 2047 );
25
26 #TEST_VSETVL( 8, 1, 0, 0xf8, 768, 768 );
27 #TEST_VSETVL( 9, 1, 0, 0xf8, 769, 768 );
28 #TEST_VSETVL( 10, 1, 0, 0xf8, 767, 767 );
29
30 TEST_VSETVL( 11, 1, 0, 0x00, 2048, 2048 );
31 TEST_VSETVL( 12, 1, 0, 0x00, 2049, 2048 );
32 TEST_VSETVL( 13, 1, 0, 0x00, 2047, 2047 );
33
34 #TEST_VSETVL( 14, 2, 0, 0xf8, 768, 768 );
35 #TEST_VSETVL( 15, 2, 0, 0xf8, 769, 768 );
36 #TEST_VSETVL( 16, 2, 0, 0xf8, 767, 767 );
37
38 TEST_VSETVL( 17, 2, 0, 0x00, 2048, 2048 );
39 TEST_VSETVL( 18, 2, 0, 0x00, 2049, 2048 );
40 TEST_VSETVL( 19, 2, 0, 0x00, 2047, 2047 );
41
42 #TEST_VSETVL( 20, 3, 0, 0xf8, 384, 384 );
43 #TEST_VSETVL( 21, 3, 0, 0xf8, 385, 384 );
44 #TEST_VSETVL( 22, 3, 0, 0xf8, 383, 383 );
45
46 TEST_VSETVL( 23, 3, 0, 0x00, 1024, 1024 );
47 TEST_VSETVL( 24, 3, 0, 0x00, 1025, 1024 );
48 TEST_VSETVL( 25, 3, 0, 0x00, 1023, 1023 );
49
50 #TEST_VSETVL( 26, 4, 0, 0xf8, 255, 255 );
51 #TEST_VSETVL( 27, 4, 0, 0xf8, 256, 255 );
52 #TEST_VSETVL( 28, 4, 0, 0xf8, 254, 254 );
53
54 TEST_VSETVL( 29, 4, 0, 0x00, 680, 680 );
55 TEST_VSETVL( 30, 4, 0, 0x00, 681, 680 );
56 TEST_VSETVL( 31, 4, 0, 0x00, 679, 679 );
57
58 #TEST_VSETVL( 32, 5, 0, 0xf8, 192, 192 );
59 #TEST_VSETVL( 33, 5, 0, 0xf8, 193, 192 );
60 #TEST_VSETVL( 34, 5, 0, 0xf8, 191, 191 );
61
62 TEST_VSETVL( 35, 5, 0, 0x00, 512, 512 );
63 TEST_VSETVL( 36, 5, 0, 0x00, 513, 512 );
64 TEST_VSETVL( 37, 5, 0, 0x00, 511, 511 );
65
66 #TEST_VSETVL( 38, 6, 0, 0xf8, 153, 153 );
67 #TEST_VSETVL( 39, 6, 0, 0xf8, 154, 153 );
68 #TEST_VSETVL( 40, 6, 0, 0xf8, 152, 152 );
69
70 TEST_VSETVL( 41, 6, 0, 0x00, 408, 408 );
71 TEST_VSETVL( 42, 6, 0, 0x00, 409, 408 );
72 TEST_VSETVL( 43, 6, 0, 0x00, 407, 407 );
73
74 #TEST_VSETVL( 44, 7, 0, 0xf8, 126, 126 );
75 #TEST_VSETVL( 45, 7, 0, 0xf8, 127, 126 );
76 #TEST_VSETVL( 46, 7, 0, 0xf8, 125, 125 );
77
78 TEST_VSETVL( 47, 7, 0, 0x00, 336, 336 );
79 TEST_VSETVL( 48, 7, 0, 0x00, 337, 336 );
80 TEST_VSETVL( 49, 7, 0, 0x00, 335, 335 );
81
82 #TEST_VSETVL( 50, 8, 0, 0xf8, 108, 108 );
83 #TEST_VSETVL( 51, 8, 0, 0xf8, 109, 108 );
84 #TEST_VSETVL( 52, 8, 0, 0xf8, 107, 107 );
85
86 TEST_VSETVL( 53, 8, 0, 0x00, 288, 288 );
87 TEST_VSETVL( 54, 8, 0, 0x00, 289, 288 );
88 TEST_VSETVL( 55, 8, 0, 0x00, 287, 287 );
89
90 #TEST_VSETVL( 56, 9, 0, 0xf8, 96, 96 );
91 #TEST_VSETVL( 57, 9, 0, 0xf8, 97, 96 );
92 #TEST_VSETVL( 58, 9, 0, 0xf8, 95, 95 );
93
94 TEST_VSETVL( 59, 9, 0, 0x00, 256, 256 );
95 TEST_VSETVL( 60, 9, 0, 0x00, 257, 256 );
96 TEST_VSETVL( 61, 9, 0, 0x00, 255, 255 );
97
98 #TEST_VSETVL( 62, 10, 0, 0xf8, 84, 84 );
99 #TEST_VSETVL( 63, 10, 0, 0xf8, 85, 84 );
100 #TEST_VSETVL( 64, 10, 0, 0xf8, 83, 83 );
101
102 TEST_VSETVL( 65, 10, 0, 0x00, 224, 224 );
103 TEST_VSETVL( 66, 10, 0, 0x00, 225, 224 );
104 TEST_VSETVL( 67, 10, 0, 0x00, 223, 223 );
105
106 #TEST_VSETVL( 68, 11, 0, 0xf8, 75, 75 );
107 #TEST_VSETVL( 69, 11, 0, 0xf8, 76, 75 );
108 #TEST_VSETVL( 70, 11, 0, 0xf8, 74, 74 );
109
110 TEST_VSETVL( 71, 11, 0, 0x00, 200, 200 );
111 TEST_VSETVL( 72, 11, 0, 0x00, 201, 200 );
112 TEST_VSETVL( 73, 11, 0, 0x00, 199, 199 );
113
114 #TEST_VSETVL( 74, 12, 0, 0xf8, 69, 69 );
115 #TEST_VSETVL( 75, 12, 0, 0xf8, 70, 69 );
116 #TEST_VSETVL( 76, 12, 0, 0xf8, 68, 68 );
117
118 TEST_VSETVL( 77, 12, 0, 0x00, 184, 184 );
119 TEST_VSETVL( 78, 12, 0, 0x00, 185, 184 );
120 TEST_VSETVL( 79, 12, 0, 0x00, 183, 183 );
121
122 #TEST_VSETVL( 80, 13, 0, 0xf8, 63, 63 );
123 #TEST_VSETVL( 81, 13, 0, 0xf8, 64, 63 );
124 #TEST_VSETVL( 82, 13, 0, 0xf8, 62, 62 );
125
126 TEST_VSETVL( 83, 13, 0, 0x00, 168, 168 );
127 TEST_VSETVL( 84, 13, 0, 0x00, 169, 168 );
128 TEST_VSETVL( 85, 13, 0, 0x00, 167, 167 );
129
130 #TEST_VSETVL( 86, 14, 0, 0xf8, 57, 57 );
131 #TEST_VSETVL( 87, 14, 0, 0xf8, 58, 57 );
132 #TEST_VSETVL( 88, 14, 0, 0xf8, 56, 56 );
133
134 TEST_VSETVL( 89, 14, 0, 0x00, 152, 152 );
135 TEST_VSETVL( 90, 14, 0, 0x00, 153, 152 );
136 TEST_VSETVL( 91, 14, 0, 0x00, 151, 151 );
137
138 #TEST_VSETVL( 92, 15, 0, 0xf8, 54, 54 );
139 #TEST_VSETVL( 93, 15, 0, 0xf8, 55, 54 );
140 #TEST_VSETVL( 94, 15, 0, 0xf8, 53, 53 );
141
142 TEST_VSETVL( 95, 15, 0, 0x00, 144, 144 );
143 TEST_VSETVL( 96, 15, 0, 0x00, 145, 144 );
144 TEST_VSETVL( 97, 15, 0, 0x00, 143, 143 );
145
146 #TEST_VSETVL( 98, 16, 0, 0xf8, 51, 51 );
147 #TEST_VSETVL( 99, 16, 0, 0xf8, 52, 51 );
148 #TEST_VSETVL( 100, 16, 0, 0xf8, 50, 50 );
149
150 TEST_VSETVL( 101, 16, 0, 0x00, 136, 136 );
151 TEST_VSETVL( 102, 16, 0, 0x00, 137, 136 );
152 TEST_VSETVL( 103, 16, 0, 0x00, 135, 135 );
153
154 #TEST_VSETVL( 104, 17, 0, 0xf8, 48, 48 );
155 #TEST_VSETVL( 105, 17, 0, 0xf8, 49, 48 );
156 #TEST_VSETVL( 106, 17, 0, 0xf8, 47, 47 );
157
158 TEST_VSETVL( 107, 17, 0, 0x00, 128, 128 );
159 TEST_VSETVL( 108, 17, 0, 0x00, 129, 128 );
160 TEST_VSETVL( 109, 17, 0, 0x00, 127, 127 );
161
162 #TEST_VSETVL( 110, 18, 0, 0xf8, 45, 45 );
163 #TEST_VSETVL( 111, 18, 0, 0xf8, 46, 45 );
164 #TEST_VSETVL( 112, 18, 0, 0xf8, 44, 44 );
165
166 TEST_VSETVL( 113, 18, 0, 0x00, 120, 120 );
167 TEST_VSETVL( 114, 18, 0, 0x00, 121, 120 );
168 TEST_VSETVL( 115, 18, 0, 0x00, 119, 119 );
169
170 #TEST_VSETVL( 116, 19, 0, 0xf8, 42, 42 );
171 #TEST_VSETVL( 117, 19, 0, 0xf8, 43, 42 );
172 #TEST_VSETVL( 118, 19, 0, 0xf8, 41, 41 );
173
174 TEST_VSETVL( 119, 19, 0, 0x00, 112, 112 );
175 TEST_VSETVL( 120, 19, 0, 0x00, 113, 112 );
176 TEST_VSETVL( 121, 19, 0, 0x00, 111, 111 );
177
178 #TEST_VSETVL( 122, 20, 0, 0xf8, 39, 39 );
179 #TEST_VSETVL( 123, 20, 0, 0xf8, 40, 39 );
180 #TEST_VSETVL( 124, 20, 0, 0xf8, 38, 38 );
181
182 TEST_VSETVL( 125, 20, 0, 0x00, 104, 104 );
183 TEST_VSETVL( 126, 20, 0, 0x00, 105, 104 );
184 TEST_VSETVL( 127, 20, 0, 0x00, 103, 103 );
185
186 #TEST_VSETVL( 128, 21, 0, 0xf8, 36, 36 );
187 #TEST_VSETVL( 129, 21, 0, 0xf8, 37, 36 );
188 #TEST_VSETVL( 130, 21, 0, 0xf8, 35, 35 );
189
190 TEST_VSETVL( 131, 21, 0, 0x00, 96, 96 );
191 TEST_VSETVL( 132, 21, 0, 0x00, 97, 96 );
192 TEST_VSETVL( 133, 21, 0, 0x00, 95, 95 );
193
194 #TEST_VSETVL( 134, 22, 0, 0xf8, 36, 36 );
195 #TEST_VSETVL( 135, 22, 0, 0xf8, 37, 36 );
196 #TEST_VSETVL( 136, 22, 0, 0xf8, 35, 35 );
197
198 TEST_VSETVL( 137, 22, 0, 0x00, 96, 96 );
199 TEST_VSETVL( 138, 22, 0, 0x00, 97, 96 );
200 TEST_VSETVL( 139, 22, 0, 0x00, 95, 95 );
201
202 #TEST_VSETVL( 140, 23, 0, 0xf8, 33, 33 );
203 #TEST_VSETVL( 141, 23, 0, 0xf8, 34, 33 );
204 #TEST_VSETVL( 142, 23, 0, 0xf8, 32, 32 );
205
206 TEST_VSETVL( 143, 23, 0, 0x00, 88, 88 );
207 TEST_VSETVL( 144, 23, 0, 0x00, 89, 88 );
208 TEST_VSETVL( 145, 23, 0, 0x00, 87, 87 );
209
210 #TEST_VSETVL( 146, 24, 0, 0xf8, 33, 33 );
211 #TEST_VSETVL( 147, 24, 0, 0xf8, 34, 33 );
212 #TEST_VSETVL( 148, 24, 0, 0xf8, 32, 32 );
213
214 TEST_VSETVL( 149, 24, 0, 0x00, 88, 88 );
215 TEST_VSETVL( 150, 24, 0, 0x00, 89, 88 );
216 TEST_VSETVL( 151, 24, 0, 0x00, 87, 87 );
217
218 #TEST_VSETVL( 152, 25, 0, 0xf8, 30, 30 );
219 #TEST_VSETVL( 153, 25, 0, 0xf8, 31, 30 );
220 #TEST_VSETVL( 154, 25, 0, 0xf8, 29, 29 );
221
222 TEST_VSETVL( 155, 25, 0, 0x00, 80, 80 );
223 TEST_VSETVL( 156, 25, 0, 0x00, 81, 80 );
224 TEST_VSETVL( 157, 25, 0, 0x00, 79, 79 );
225
226 #TEST_VSETVL( 158, 26, 0, 0xf8, 30, 30 );
227 #TEST_VSETVL( 159, 26, 0, 0xf8, 31, 30 );
228 #TEST_VSETVL( 160, 26, 0, 0xf8, 29, 29 );
229
230 TEST_VSETVL( 161, 26, 0, 0x00, 80, 80 );
231 TEST_VSETVL( 162, 26, 0, 0x00, 81, 80 );
232 TEST_VSETVL( 163, 26, 0, 0x00, 79, 79 );
233
234 #TEST_VSETVL( 164, 27, 0, 0xf8, 27, 27 );
235 #TEST_VSETVL( 165, 27, 0, 0xf8, 28, 27 );
236 #TEST_VSETVL( 166, 27, 0, 0xf8, 26, 26 );
237
238 TEST_VSETVL( 167, 27, 0, 0x00, 72, 72 );
239 TEST_VSETVL( 168, 27, 0, 0x00, 73, 72 );
240 TEST_VSETVL( 169, 27, 0, 0x00, 71, 71 );
241
242 #TEST_VSETVL( 170, 28, 0, 0xf8, 27, 27 );
243 #TEST_VSETVL( 171, 28, 0, 0xf8, 28, 27 );
244 #TEST_VSETVL( 172, 28, 0, 0xf8, 26, 26 );
245
246 TEST_VSETVL( 173, 28, 0, 0x00, 72, 72 );
247 TEST_VSETVL( 174, 28, 0, 0x00, 73, 72 );
248 TEST_VSETVL( 175, 28, 0, 0x00, 71, 71 );
249
250 #TEST_VSETVL( 176, 29, 0, 0xf8, 27, 27 );
251 #TEST_VSETVL( 177, 29, 0, 0xf8, 28, 27 );
252 #TEST_VSETVL( 178, 29, 0, 0xf8, 26, 26 );
253
254 TEST_VSETVL( 179, 29, 0, 0x00, 72, 72 );
255 TEST_VSETVL( 180, 29, 0, 0x00, 73, 72 );
256 TEST_VSETVL( 181, 29, 0, 0x00, 71, 71 );
257
258 #TEST_VSETVL( 182, 30, 0, 0xf8, 24, 24 );
259 #TEST_VSETVL( 183, 30, 0, 0xf8, 25, 24 );
260 #TEST_VSETVL( 184, 30, 0, 0xf8, 23, 23 );
261
262 TEST_VSETVL( 185, 30, 0, 0x00, 64, 64 );
263 TEST_VSETVL( 186, 30, 0, 0x00, 65, 64 );
264 TEST_VSETVL( 187, 30, 0, 0x00, 63, 63 );
265
266 #TEST_VSETVL( 188, 31, 0, 0xf8, 24, 24 );
267 #TEST_VSETVL( 189, 31, 0, 0xf8, 25, 24 );
268 #TEST_VSETVL( 190, 31, 0, 0xf8, 23, 23 );
269
270 TEST_VSETVL( 191, 31, 0, 0x00, 64, 64 );
271 TEST_VSETVL( 192, 31, 0, 0x00, 65, 64 );
272 TEST_VSETVL( 193, 31, 0, 0x00, 63, 63 );
273
274 #TEST_VSETVL( 194, 32, 0, 0xf8, 24, 24 );
275 #TEST_VSETVL( 195, 32, 0, 0xf8, 25, 24 );
276 #TEST_VSETVL( 196, 32, 0, 0xf8, 23, 23 );
277
278 TEST_VSETVL( 197, 32, 0, 0x00, 64, 64 );
279 TEST_VSETVL( 198, 32, 0, 0x00, 65, 64 );
280 TEST_VSETVL( 199, 32, 0, 0x00, 63, 63 );
281
282 #TEST_VSETVL( 200, 32, 0, 0xf8, 24, 24 );
283 #TEST_VSETVL( 201, 32, 0, 0xf8, 25, 24 );
284 #TEST_VSETVL( 202, 32, 0, 0xf8, 23, 23 );
285
286 TEST_VSETVL( 203, 32, 0, 0x00, 64, 64 );
287 TEST_VSETVL( 204, 32, 0, 0x00, 65, 64 );
288 TEST_VSETVL( 205, 32, 0, 0x00, 63, 63 );
289
290 #TEST_VSETVL( 206, 32, 1, 0xf8, 24, 24 );
291 #TEST_VSETVL( 207, 32, 1, 0xf8, 25, 24 );
292 #TEST_VSETVL( 208, 32, 1, 0xf8, 23, 23 );
293
294 TEST_VSETVL( 209, 32, 1, 0x00, 64, 64 );
295 TEST_VSETVL( 210, 32, 1, 0x00, 65, 64 );
296 TEST_VSETVL( 211, 32, 1, 0x00, 63, 63 );
297
298 #TEST_VSETVL( 212, 32, 2, 0xf8, 21, 21 );
299 #TEST_VSETVL( 213, 32, 2, 0xf8, 22, 21 );
300 #TEST_VSETVL( 214, 32, 2, 0xf8, 20, 20 );
301
302 TEST_VSETVL( 215, 32, 2, 0x00, 56, 56 );
303 TEST_VSETVL( 216, 32, 2, 0x00, 57, 56 );
304 TEST_VSETVL( 217, 32, 2, 0x00, 55, 55 );
305
306 #TEST_VSETVL( 218, 32, 3, 0xf8, 21, 21 );
307 #TEST_VSETVL( 219, 32, 3, 0xf8, 22, 21 );
308 #TEST_VSETVL( 220, 32, 3, 0xf8, 20, 20 );
309
310 TEST_VSETVL( 221, 32, 3, 0x00, 56, 56 );
311 TEST_VSETVL( 222, 32, 3, 0x00, 57, 56 );
312 TEST_VSETVL( 223, 32, 3, 0x00, 55, 55 );
313
314 #TEST_VSETVL( 224, 32, 4, 0xf8, 21, 21 );
315 #TEST_VSETVL( 225, 32, 4, 0xf8, 22, 21 );
316 #TEST_VSETVL( 226, 32, 4, 0xf8, 20, 20 );
317
318 TEST_VSETVL( 227, 32, 4, 0x00, 56, 56 );
319 TEST_VSETVL( 228, 32, 4, 0x00, 57, 56 );
320 TEST_VSETVL( 229, 32, 4, 0x00, 55, 55 );
321
322 #TEST_VSETVL( 230, 32, 5, 0xf8, 21, 21 );
323 #TEST_VSETVL( 231, 32, 5, 0xf8, 22, 21 );
324 #TEST_VSETVL( 232, 32, 5, 0xf8, 20, 20 );
325
326 TEST_VSETVL( 233, 32, 5, 0x00, 56, 56 );
327 TEST_VSETVL( 234, 32, 5, 0x00, 57, 56 );
328 TEST_VSETVL( 235, 32, 5, 0x00, 55, 55 );
329
330 #TEST_VSETVL( 236, 32, 6, 0xf8, 18, 18 );
331 #TEST_VSETVL( 237, 32, 6, 0xf8, 19, 18 );
332 #TEST_VSETVL( 238, 32, 6, 0xf8, 17, 17 );
333
334 TEST_VSETVL( 239, 32, 6, 0x00, 48, 48 );
335 TEST_VSETVL( 240, 32, 6, 0x00, 49, 48 );
336 TEST_VSETVL( 241, 32, 6, 0x00, 47, 47 );
337
338 #TEST_VSETVL( 242, 32, 7, 0xf8, 18, 18 );
339 #TEST_VSETVL( 243, 32, 7, 0xf8, 19, 18 );
340 #TEST_VSETVL( 244, 32, 7, 0xf8, 17, 17 );
341
342 TEST_VSETVL( 245, 32, 7, 0x00, 48, 48 );
343 TEST_VSETVL( 246, 32, 7, 0x00, 49, 48 );
344 TEST_VSETVL( 247, 32, 7, 0x00, 47, 47 );
345
346 #TEST_VSETVL( 248, 32, 8, 0xf8, 18, 18 );
347 #TEST_VSETVL( 249, 32, 8, 0xf8, 19, 18 );
348 #TEST_VSETVL( 250, 32, 8, 0xf8, 17, 17 );
349
350 TEST_VSETVL( 251, 32, 8, 0x00, 48, 48 );
351 TEST_VSETVL( 252, 32, 8, 0x00, 49, 48 );
352 TEST_VSETVL( 253, 32, 8, 0x00, 47, 47 );
353
354 #TEST_VSETVL( 254, 32, 9, 0xf8, 18, 18 );
355 #TEST_VSETVL( 255, 32, 9, 0xf8, 19, 18 );
356 #TEST_VSETVL( 256, 32, 9, 0xf8, 17, 17 );
357
358 TEST_VSETVL( 257, 32, 9, 0x00, 48, 48 );
359 TEST_VSETVL( 258, 32, 9, 0x00, 49, 48 );
360 TEST_VSETVL( 259, 32, 9, 0x00, 47, 47 );
361
362 #TEST_VSETVL( 260, 32, 10, 0xf8, 18, 18 );
363 #TEST_VSETVL( 261, 32, 10, 0xf8, 19, 18 );
364 #TEST_VSETVL( 262, 32, 10, 0xf8, 17, 17 );
365
366 TEST_VSETVL( 263, 32, 10, 0x00, 48, 48 );
367 TEST_VSETVL( 264, 32, 10, 0x00, 49, 48 );
368 TEST_VSETVL( 265, 32, 10, 0x00, 47, 47 );
369
370 #TEST_VSETVL( 266, 32, 11, 0xf8, 18, 18 );
371 #TEST_VSETVL( 267, 32, 11, 0xf8, 19, 18 );
372 #TEST_VSETVL( 268, 32, 11, 0xf8, 17, 17 );
373
374 TEST_VSETVL( 269, 32, 11, 0x00, 48, 48 );
375 TEST_VSETVL( 270, 32, 11, 0x00, 49, 48 );
376 TEST_VSETVL( 271, 32, 11, 0x00, 47, 47 );
377
378 #TEST_VSETVL( 272, 32, 12, 0xf8, 15, 15 );
379 #TEST_VSETVL( 273, 32, 12, 0xf8, 16, 15 );
380 #TEST_VSETVL( 274, 32, 12, 0xf8, 14, 14 );
381
382 TEST_VSETVL( 275, 32, 12, 0x00, 40, 40 );
383 TEST_VSETVL( 276, 32, 12, 0x00, 41, 40 );
384 TEST_VSETVL( 277, 32, 12, 0x00, 39, 39 );
385
386 #TEST_VSETVL( 278, 32, 13, 0xf8, 15, 15 );
387 #TEST_VSETVL( 279, 32, 13, 0xf8, 16, 15 );
388 #TEST_VSETVL( 280, 32, 13, 0xf8, 14, 14 );
389
390 TEST_VSETVL( 281, 32, 13, 0x00, 40, 40 );
391 TEST_VSETVL( 282, 32, 13, 0x00, 41, 40 );
392 TEST_VSETVL( 283, 32, 13, 0x00, 39, 39 );
393
394 #TEST_VSETVL( 284, 32, 14, 0xf8, 15, 15 );
395 #TEST_VSETVL( 285, 32, 14, 0xf8, 16, 15 );
396 #TEST_VSETVL( 286, 32, 14, 0xf8, 14, 14 );
397
398 TEST_VSETVL( 287, 32, 14, 0x00, 40, 40 );
399 TEST_VSETVL( 288, 32, 14, 0x00, 41, 40 );
400 TEST_VSETVL( 289, 32, 14, 0x00, 39, 39 );
401
402 #TEST_VSETVL( 290, 32, 15, 0xf8, 15, 15 );
403 #TEST_VSETVL( 291, 32, 15, 0xf8, 16, 15 );
404 #TEST_VSETVL( 292, 32, 15, 0xf8, 14, 14 );
405
406 TEST_VSETVL( 293, 32, 15, 0x00, 40, 40 );
407 TEST_VSETVL( 294, 32, 15, 0x00, 41, 40 );
408 TEST_VSETVL( 295, 32, 15, 0x00, 39, 39 );
409
410 #TEST_VSETVL( 296, 32, 16, 0xf8, 15, 15 );
411 #TEST_VSETVL( 297, 32, 16, 0xf8, 16, 15 );
412 #TEST_VSETVL( 298, 32, 16, 0xf8, 14, 14 );
413
414 TEST_VSETVL( 299, 32, 16, 0x00, 40, 40 );
415 TEST_VSETVL( 300, 32, 16, 0x00, 41, 40 );
416 TEST_VSETVL( 301, 32, 16, 0x00, 39, 39 );
417
418 #TEST_VSETVL( 302, 32, 17, 0xf8, 15, 15 );
419 #TEST_VSETVL( 303, 32, 17, 0xf8, 16, 15 );
420 #TEST_VSETVL( 304, 32, 17, 0xf8, 14, 14 );
421
422 TEST_VSETVL( 305, 32, 17, 0x00, 40, 40 );
423 TEST_VSETVL( 306, 32, 17, 0x00, 41, 40 );
424 TEST_VSETVL( 307, 32, 17, 0x00, 39, 39 );
425
426 #TEST_VSETVL( 308, 32, 18, 0xf8, 15, 15 );
427 #TEST_VSETVL( 309, 32, 18, 0xf8, 16, 15 );
428 #TEST_VSETVL( 310, 32, 18, 0xf8, 14, 14 );
429
430 TEST_VSETVL( 311, 32, 18, 0x00, 40, 40 );
431 TEST_VSETVL( 312, 32, 18, 0x00, 41, 40 );
432 TEST_VSETVL( 313, 32, 18, 0x00, 39, 39 );
433
434 #TEST_VSETVL( 314, 32, 19, 0xf8, 15, 15 );
435 #TEST_VSETVL( 315, 32, 19, 0xf8, 16, 15 );
436 #TEST_VSETVL( 316, 32, 19, 0xf8, 14, 14 );
437
438 TEST_VSETVL( 317, 32, 19, 0x00, 40, 40 );
439 TEST_VSETVL( 318, 32, 19, 0x00, 41, 40 );
440 TEST_VSETVL( 319, 32, 19, 0x00, 39, 39 );
441
442 #TEST_VSETVL( 320, 32, 20, 0xf8, 15, 15 );
443 #TEST_VSETVL( 321, 32, 20, 0xf8, 16, 15 );
444 #TEST_VSETVL( 322, 32, 20, 0xf8, 14, 14 );
445
446 TEST_VSETVL( 323, 32, 20, 0x00, 40, 40 );
447 TEST_VSETVL( 324, 32, 20, 0x00, 41, 40 );
448 TEST_VSETVL( 325, 32, 20, 0x00, 39, 39 );
449
450 #TEST_VSETVL( 326, 32, 21, 0xf8, 12, 12 );
451 #TEST_VSETVL( 327, 32, 21, 0xf8, 13, 12 );
452 #TEST_VSETVL( 328, 32, 21, 0xf8, 11, 11 );
453
454 TEST_VSETVL( 329, 32, 21, 0x00, 32, 32 );
455 TEST_VSETVL( 330, 32, 21, 0x00, 33, 32 );
456 TEST_VSETVL( 331, 32, 21, 0x00, 31, 31 );
457
458 #TEST_VSETVL( 332, 32, 22, 0xf8, 12, 12 );
459 #TEST_VSETVL( 333, 32, 22, 0xf8, 13, 12 );
460 #TEST_VSETVL( 334, 32, 22, 0xf8, 11, 11 );
461
462 TEST_VSETVL( 335, 32, 22, 0x00, 32, 32 );
463 TEST_VSETVL( 336, 32, 22, 0x00, 33, 32 );
464 TEST_VSETVL( 337, 32, 22, 0x00, 31, 31 );
465
466 #TEST_VSETVL( 338, 32, 23, 0xf8, 12, 12 );
467 #TEST_VSETVL( 339, 32, 23, 0xf8, 13, 12 );
468 #TEST_VSETVL( 340, 32, 23, 0xf8, 11, 11 );
469
470 TEST_VSETVL( 341, 32, 23, 0x00, 32, 32 );
471 TEST_VSETVL( 342, 32, 23, 0x00, 33, 32 );
472 TEST_VSETVL( 343, 32, 23, 0x00, 31, 31 );
473
474 #TEST_VSETVL( 344, 32, 24, 0xf8, 12, 12 );
475 #TEST_VSETVL( 345, 32, 24, 0xf8, 13, 12 );
476 #TEST_VSETVL( 346, 32, 24, 0xf8, 11, 11 );
477
478 TEST_VSETVL( 347, 32, 24, 0x00, 32, 32 );
479 TEST_VSETVL( 348, 32, 24, 0x00, 33, 32 );
480 TEST_VSETVL( 349, 32, 24, 0x00, 31, 31 );
481
482 #TEST_VSETVL( 350, 32, 25, 0xf8, 12, 12 );
483 #TEST_VSETVL( 351, 32, 25, 0xf8, 13, 12 );
484 #TEST_VSETVL( 352, 32, 25, 0xf8, 11, 11 );
485
486 TEST_VSETVL( 353, 32, 25, 0x00, 32, 32 );
487 TEST_VSETVL( 354, 32, 25, 0x00, 33, 32 );
488 TEST_VSETVL( 355, 32, 25, 0x00, 31, 31 );
489
490 #TEST_VSETVL( 356, 32, 26, 0xf8, 12, 12 );
491 #TEST_VSETVL( 357, 32, 26, 0xf8, 13, 12 );
492 #TEST_VSETVL( 358, 32, 26, 0xf8, 11, 11 );
493
494 TEST_VSETVL( 359, 32, 26, 0x00, 32, 32 );
495 TEST_VSETVL( 360, 32, 26, 0x00, 33, 32 );
496 TEST_VSETVL( 361, 32, 26, 0x00, 31, 31 );
497
498 #TEST_VSETVL( 362, 32, 27, 0xf8, 12, 12 );
499 #TEST_VSETVL( 363, 32, 27, 0xf8, 13, 12 );
500 #TEST_VSETVL( 364, 32, 27, 0xf8, 11, 11 );
501
502 TEST_VSETVL( 365, 32, 27, 0x00, 32, 32 );
503 TEST_VSETVL( 366, 32, 27, 0x00, 33, 32 );
504 TEST_VSETVL( 367, 32, 27, 0x00, 31, 31 );
505
506 #TEST_VSETVL( 368, 32, 28, 0xf8, 12, 12 );
507 #TEST_VSETVL( 369, 32, 28, 0xf8, 13, 12 );
508 #TEST_VSETVL( 370, 32, 28, 0xf8, 11, 11 );
509
510 TEST_VSETVL( 371, 32, 28, 0x00, 32, 32 );
511 TEST_VSETVL( 372, 32, 28, 0x00, 33, 32 );
512 TEST_VSETVL( 373, 32, 28, 0x00, 31, 31 );
513
514 #TEST_VSETVL( 374, 32, 29, 0xf8, 12, 12 );
515 #TEST_VSETVL( 375, 32, 29, 0xf8, 13, 12 );
516 #TEST_VSETVL( 376, 32, 29, 0xf8, 11, 11 );
517
518 TEST_VSETVL( 377, 32, 29, 0x00, 32, 32 );
519 TEST_VSETVL( 378, 32, 29, 0x00, 33, 32 );
520 TEST_VSETVL( 379, 32, 29, 0x00, 31, 31 );
521
522 #TEST_VSETVL( 380, 32, 30, 0xf8, 12, 12 );
523 #TEST_VSETVL( 381, 32, 30, 0xf8, 13, 12 );
524 #TEST_VSETVL( 382, 32, 30, 0xf8, 11, 11 );
525
526 TEST_VSETVL( 383, 32, 30, 0x00, 32, 32 );
527 TEST_VSETVL( 384, 32, 30, 0x00, 33, 32 );
528 TEST_VSETVL( 385, 32, 30, 0x00, 31, 31 );
529
530 #TEST_VSETVL( 386, 32, 31, 0xf8, 12, 12 );
531 #TEST_VSETVL( 387, 32, 31, 0xf8, 13, 12 );
532 #TEST_VSETVL( 388, 32, 31, 0xf8, 11, 11 );
533
534 TEST_VSETVL( 389, 32, 31, 0x00, 32, 32 );
535 TEST_VSETVL( 390, 32, 31, 0x00, 33, 32 );
536 TEST_VSETVL( 391, 32, 31, 0x00, 31, 31 );
537
538 #TEST_VSETVL( 392, 32, 32, 0xf8, 12, 12 );
539 #TEST_VSETVL( 393, 32, 32, 0xf8, 13, 12 );
540 #TEST_VSETVL( 394, 32, 32, 0xf8, 11, 11 );
541
542 TEST_VSETVL( 395, 32, 32, 0x00, 32, 32 );
543 TEST_VSETVL( 396, 32, 32, 0x00, 33, 32 );
544 TEST_VSETVL( 397, 32, 32, 0x00, 31, 31 );
545
546 #-------------------------------------------------------------
547 # Source/Destination tests
548 #-------------------------------------------------------------
549
550 TEST_PASSFAIL
551
552 RVTEST_CODE_END
553
554 .data
555 RVTEST_DATA_BEGIN
556
557 TEST_DATA
558
559 RVTEST_DATA_END