sfv2.s
7.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
/****************************************************************
This program tests the instruction: sfv
****************************************************************/
#include "suregre.h"
.base 0x04001000
.data 0x04000000
.word 0x01820384
.word 0x85068708
.word 0x098A0B8C
.word 0x8D0E8F10
.word 0x11921394
.word 0x95169718
.word 0x199A1B9C
.word 0x9D1E9F20
.word 0x21A223A4
.word 0xA526A728
.word 0x29AA2BAC
.word 0xAD2EAF30
.word 0x31B233B4
.word 0xB536B738
.word 0x39BA3BBC
.word 0xBD3EBF40
.word 0x41C243C4
.word 0xC546C748
.word 0x49CA4BCC
.word 0xCD4ECF50
.word 0x51D253D4
.word 0xD556D758
.word 0x59DA5BDC
.word 0xDD5EDF60
.word 0x61E263E4
.word 0xE566E768
.word 0x69EA6BEC
.word 0xED6EEF70
.word 0x71F273F4
.word 0xF576F778
.word 0x79FA7BFC
.word 0xFD7E0080
LI(r0 , 0xFFFF, 0xFFFF);
LI(r1 , 0x0101, 0x0101);
LI(r2 , 0x0202, 0x0202);
LI(r3 , 0x0303, 0x0303);
LI(r4 , 0x0404, 0x0404);
LI(r5 , 0x0505, 0x0505);
LI(r6 , 0x0606, 0x0606);
LI(r7 , 0x0707, 0x0707);
LI(r8 , 0x0808, 0x0808);
LI(r9 , 0x0909, 0x0909);
LI(r10, 0x0A0A, 0x0A0A);
LI(r11, 0x0B0B, 0x0B0B);
LI(r12, 0x0C0C, 0x0C0C);
LI(r13, 0x0D0D, 0x0D0D);
LI(r14, 0x0E0E, 0x0E0E);
LI(r15, 0x0F0F, 0x0F0F);
LI(r16, 0x1010, 0x1010);
LI(r17, 0x1111, 0x1111);
LI(r18, 0x1212, 0x1212);
LI(r19, 0x1313, 0x1313);
LI(r20, 0x1414, 0x1414);
LI(r21, 0x1515, 0x1515);
LI(r22, 0x1616, 0x1616);
LI(r23, 0x1717, 0x1717);
LI(r24, 0x1818, 0x1818);
LI(r25, 0x1919, 0x1919);
LI(r26, 0x1A1A, 0x1A1A);
LI(r27, 0x1B1B, 0x1B1B);
LI(r28, 0x1C1C, 0x1C1C);
LI(r29, 0x1D1D, 0x1D1D);
LI(r30, 0x1E1E, 0x1E1E);
LI(r31, 0x1F1F, 0x1F1F);
lqv v0[0], 0 (r0);
vxor v0 , v0, v0
vxor v1 , v0, v0
vxor v2 , v0, v0
vxor v3 , v0, v0
vxor v4 , v0, v0
vxor v5 , v0, v0
vxor v6 , v0, v0
vxor v7 , v0, v0
vxor v8 , v0, v0
vxor v9 , v0, v0
vxor v10, v0, v0
vxor v11, v0, v0
vxor v12, v0, v0
vxor v13, v0, v0
vxor v14, v0, v0
vxor v15, v0, v0
vxor v16, v0, v0
vxor v17, v0, v0
vxor v18, v0, v0
vxor v19, v0, v0
vxor v20, v0, v0
vxor v21, v0, v0
vxor v22, v0, v0
vxor v23, v0, v0
vxor v24, v0, v0
vxor v25, v0, v0
vxor v26, v0, v0
vxor v27, v0, v0
vxor v28, v0, v0
vxor v29, v0, v0
vxor v30, v0, v0
vxor v31, v0, v0
.word 0x19D72E7A
.word 0x503544A4
.word 0x31C25C41
.word 0x5454070C
.word 0x416343C4
.word 0xC5B8C748
.word 0x49A84BCC
.word 0xCD0ECF50
.word 0x51D253D4
.word 0xD556D758
.word 0x59DA5BDC
.word 0xDD5EDF60
ChkVst(26,sfv,r3 ,r4 ,r5 ,r2 ,v1 ,v19,v20,v0 ,0x0400,0x0080,0x0400,0x0041,0x0400,0x0040,0x0000,e8 ,0x00FF)
.word 0x4FC50EE9
.word 0x499C210E
.word 0x140F70EB
.word 0x7B5C5E64
.word 0x519F53D4
.word 0xD51DD758
.word 0x59935BDC
.word 0xDD42DF60
.word 0x61E263E4
.word 0xE566E768
.word 0x69EA6BEC
.word 0xED6EEF70
ChkVst(27,sfv,r4 ,r5 ,r6 ,r3 ,v19,v20,v21,v1 ,0x0400,0x00B0,0x0400,0x0041,0x0400,0x0050,0x0010,e0 ,0x00FF)
.word 0x012B50BF
.word 0x586F735A
.word 0x250D42F7
.word 0x0126524C
.word 0x314A33B4
.word 0xB585B738
.word 0x39023BBC
.word 0xBDA4BF40
.word 0x416343C4
.word 0xC5B8C748
.word 0x49A84BCC
.word 0xCD0ECF50
ChkVst(28,sfv,r5 ,r6 ,r7 ,r4 ,v20,v21,v22,v19,0x0400,0x00E0,0x0400,0x0041,0x0400,0x0030,0xFFF0,e8 ,0x00FF)
.word 0x46DD4A18
.word 0x47F45CE3
.word 0x2587203B
.word 0x10DC6D0E
.word 0x61E263E4
.word 0xE566E768
.word 0x69EA6BEC
.word 0xED6EEF70
.word 0x718D73F4
.word 0xF594F778
.word 0x798F7BFC
.word 0xFDB90080
ChkVst(29,sfv,r6 ,r7 ,r8 ,r5 ,v21,v22,v23,v20,0x0400,0x0110,0x0400,0x0041,0x0400,0x0060,0x0030,e0 ,0x00FF)
.word 0x12FF7E68
.word 0x3B9B71C2
.word 0x78557DAD
.word 0x04951B72
.word 0x01F00384
.word 0x85FB8708
.word 0x09090B8C
.word 0x8D368F10
.word 0x11921394
.word 0x95169718
.word 0x199A1B9C
.word 0x9D1E9F20
ChkVst(30,sfv,r7 ,r8 ,r9 ,r6 ,v22,v23,v24,v21,0x0400,0x0140,0x0400,0x0041,0x0400,0x0000,0xFFC0,e8 ,0x00FF)
.word 0x0E7C6E02
.word 0x0880544D
.word 0x57DA3EDD
.word 0x56D2003B
.word 0x41631CC4
.word 0xC5B8DC48
.word 0x49A811CC
.word 0xCD0EA850
.word 0x519F53D4
.word 0xD51DD758
.word 0x59935BDC
.word 0xDD42DF60
ChkVst(31,sfv,r8 ,r9 ,r10,r7 ,v23,v24,v25,v22,0x0400,0x0170,0x0400,0x0042,0x0400,0x0040,0x0000,e0 ,0x00FF)
.word 0x268F5593
.word 0x3EEB4095
.word 0x3B856D75
.word 0x440237A6
.word 0x519F77D4
.word 0xD51DDA58
.word 0x599388DC
.word 0xDD426F60
.word 0x61E263E4
.word 0xE566E768
.word 0x69EA6BEC
.word 0xED6EEF70
ChkVst(32,sfv,r9 ,r10,r11,r8 ,v24,v25,v26,v23,0x0400,0x01A0,0x0400,0x0042,0x0400,0x0050,0x0010,e8 ,0x00FF)
.word 0x4A3C5DA6
.word 0x63D107E6
.word 0x6D5260BE
.word 0x1C000AF0
.word 0x314A94B4
.word 0xB585BB38
.word 0x3902C7BC
.word 0xBDA40F40
.word 0x41631CC4
.word 0xC5B8DC48
.word 0x49A811CC
.word 0xCD0EA850
ChkVst(33,sfv,r10,r11,r12,r9 ,v25,v26,v27,v24,0x0400,0x01D0,0x0400,0x0042,0x0400,0x0030,0xFFF0,e0 ,0x00FF)
.word 0x57D53A20
.word 0x5A537C48
.word 0x4F49551B
.word 0x439213CF
.word 0x61E263E4
.word 0xE566E768
.word 0x69EA6BEC
.word 0xED6EEF70
.word 0x718D9EF4
.word 0xF594AA78
.word 0x798F87FC
.word 0xFDB92780
ChkVst(34,sfv,r11,r12,r13,r10,v26,v27,v28,v25,0x0400,0x0200,0x0400,0x0042,0x0400,0x0060,0x0030,e8 ,0x00FF)
.word 0x3A7839C3
.word 0x7D3C4C02
.word 0x50FC738D
.word 0x65EA4FF6
.word 0x01F07484
.word 0x85FB7308
.word 0x0909FA8C
.word 0x8D369810
.word 0x11921394
.word 0x95169718
.word 0x199A1B9C
.word 0x9D1E9F20
ChkVst(35,sfv,r12,r13,r14,r11,v27,v28,v29,v26,0x0400,0x0230,0x0400,0x0042,0x0400,0x0000,0xFFC0,e0 ,0x00FF)
.word 0x378D45AD
.word 0x68844D14
.word 0x150B4930
.word 0x56272494
.word 0x41631C2A
.word 0xC5B8DC92
.word 0x49A811AC
.word 0xCD0EA849
.word 0x519F77D4
.word 0xD51DDA58
.word 0x599388DC
.word 0xDD426F60
ChkVst(36,sfv,r13,r14,r15,r12,v28,v29,v30,v27,0x0400,0x0260,0x0400,0x0043,0x0400,0x0040,0x0000,e8 ,0x00FF)
.word 0x6C4A50D8
.word 0x72D238BB
.word 0x46A12EBB
.word 0x20D351D3
.word 0x519F77D8
.word 0xD51DDAA1
.word 0x599388E5
.word 0xDD426F71
.word 0x61E263E4
.word 0xE566E768
.word 0x69EA6BEC
.word 0xED6EEF70
ChkVst(37,sfv,r14,r15,r16,r13,v29,v30,v31,v28,0x0400,0x0290,0x0400,0x0043,0x0400,0x0050,0x0010,e0 ,0x00FF)
.word 0x7B31379A
.word 0x56F456EF
.word 0x1EF62002
.word 0x4D64565B
.word 0x314A943D
.word 0xB585BB40
.word 0x3902C79A
.word 0xBDA40FAC
.word 0x41631C2A
.word 0xC5B8DC92
.word 0x49A811AC
.word 0xCD0EA849
ChkVst(38,sfv,r15,r16,r17,r14,v30,v31,v0 ,v29,0x0400,0x02C0,0x0400,0x0043,0x0400,0x0030,0xFFF0,e8 ,0x00FF)
.word 0x698F0F25
.word 0x0D6719E5
.word 0x1ACD0376
.word 0x4FBD42CF
.word 0x61E263E4
.word 0xE566E768
.word 0x69EA6BEC
.word 0xED6EEF70
.word 0x718D9ED3
.word 0xF594AA1E
.word 0x798F871A
.word 0xFDB92733
ChkVst(39,sfv,r16,r17,r18,r15,v31,v0 ,v1 ,v30,0x0400,0x02F0,0x0400,0x0043,0x0400,0x0060,0x0030,e0 ,0x00FF)
.word 0x2CFD6506
.word 0x55D4298F
.word 0x5FF661A1
.word 0x29AD7D4D
.word 0x01F074BF
.word 0x85FB73C3
.word 0x0909FA53
.word 0x8D3698FA
.word 0x11921394
.word 0x95169718
.word 0x199A1B9C
.word 0x9D1E9F20
ChkVst(40,sfv,r17,r18,r19,r16,v0 ,v1 ,v2 ,v31,0x0400,0x0320,0x0400,0x0043,0x0400,0x0000,0xFFC0,e8 ,0x00FF)
ori r1, r0, 0xFEED;
Fail: sw r0, 0xf80(r0);
sw r1, 0xf84(r0);
sw r2, 0xf88(r0);
sw r3, 0xf8c(r0);
sw r4, 0xf90(r0);
sw r5, 0xf94(r0);
sw r6, 0xf98(r0);
sw r7, 0xf9c(r0);
sw r8, 0xfa0(r0);
sw r9, 0xfa4(r0);
sw r10, 0xfa8(r0);
sw r11, 0xfac(r0);
sw r12, 0xfb0(r0);
sw r13, 0xfb4(r0);
sw r14, 0xfb8(r0);
sw r15, 0xfbc(r0);
sw r16, 0xfc0(r0);
sw r17, 0xfc4(r0);
sw r18, 0xfc8(r0);
sw r19, 0xfcc(r0);
sw r20, 0xfd0(r0);
sw r21, 0xfd4(r0);
sw r22, 0xfd8(r0);
sw r23, 0xfdc(r0);
sw r24, 0xfe0(r0);
sw r25, 0xfe4(r0);
sw r26, 0xfe8(r0);
sw r27, 0xfec(r0);
sw r28, 0xff0(r0);
sw r29, 0xff4(r0);
sw r30, 0xff8(r0);
sw r31, 0xffc(r0);
break;