FreeBSD: add file descriptor tracking for _umtx_op
[valgrind.git] / none / tests / nanomips / bits.S
bloba5ae95dcb3764343b11375a365460fcf733c9046
1    .data
2    test_words:
3        .word 0x0
4        .word 0xFFFFFFFF
5        .word 0x55555555
6        .word 0xAAAAAAAA
7        .word 0x33333333
8        .word 0xCCCCCCCC
9        .word 0x12345678
10        .word 0x9ABCDEF
11    test_shifts:
12        .word 0
13        .word 1
14        .word 7
15        .word 8
16        .word 16
17        .word 17
18        .word 31
19        .word 32
21    .text
22        .align   1
24    .macro TWO_REG label, instruction, reg1, reg2, offset, mem
25        .data
26        &label:
27          .ascii "&instruction &reg1 %08x &reg2 %08x\n"
28          .byte 0
29        .text
30          li $ra, &mem
31          lw &reg2, &offset($ra)
32          &instruction &reg1, &reg2
33          move $a1, &reg1
34          li $a0, &label
35          lw $a2, &offset($ra)
36          lapc[48] $t9, mwrap_printf
37          jalrc $t9
38    .endm
40    .macro THREE_REG label, instruction, reg1, reg2, reg3, offset1, offset2, mem1, mem2
41        .data
42        &label:
43          .ascii "&instruction &reg1 %08x &reg2 %08x &reg3 %08x\n"
44          .byte 0
45        .text
46          li $ra, &mem1
47          lw &reg2, &offset1($ra)
48          li $ra, &mem2
49          lw &reg3, &offset2($ra)
50          &instruction &reg1, &reg2, &reg3
51          move $a1, &reg1
52          li $a0, &label
53          lw $a3, &offset2($ra)
54          li $ra, &mem1
55          lw $a2, &offset1($ra)
56          lapc[48] $t9, mwrap_printf
57          jalrc $t9
58    .endm
60    # One of source reg is also destination
61    .macro TWO_REG_16 label, instruction, reg1, reg2, offset1, offset2, mem1, mem2
62        .data
63        &label:
64          .ascii "&instruction &reg1 %08x old &reg1 %08x &reg2 %08x\n"
65          .byte 0
66        .text
67          li $ra, &mem1
68          lw &reg1, &offset1($ra)
69          li $ra, &mem2
70          lw &reg2, &offset2($ra)
71          &instruction &reg1, &reg2
72          move $a1, &reg1
73          li $a0, &label
74          lw $a3, &offset2($ra)
75          li $ra, &mem1
76          lw $a2, &offset1($ra)
77          lapc[48] $t9, mwrap_printf
78          jalrc $t9
79    .endm
81    .macro TWO_REG_1_IMM label, instruction, reg1, reg2, offset, mem, imm
82        .data
83        &label:
84          .ascii "&instruction &reg1 %08x &reg2 %08x, &imm\n"
85          .byte 0
86        .text
87          li $ra, &mem
88          lw &reg2, &offset($ra)
89          &instruction &reg1, &reg2, &imm
90          move $a1, &reg1
91          li $a0, &label
92          lw $a2, &offset($ra)
93          lapc[48] $t9, mwrap_printf
94          jalrc $t9
95    .endm
97    .macro TWO_REG_2_IMM label, instruction, reg1, reg2, offset, mem, imm1, imm2
98        .data
99        &label:
100          .ascii "&instruction &reg1 %08x &reg2 %08x, &imm1, &imm2\n"
101          .byte 0
102        .text
103          li $ra, &mem
104          lw &reg2, &offset($ra)
105          &instruction &reg1, &reg2, &imm1, &imm2
106          move $a1, &reg1
107          li $a0, &label
108          lw $a2, &offset($ra)
109          lapc[48] $t9, mwrap_printf
110          jalrc $t9
111    .endm
113    .macro TWO_REG_2_IMM_B label, instruction, reg1, reg2, offset1, offset2, mem1, mem2, imm1, imm2
114        .data
115        &label:
116          .ascii "&instruction &reg1 %08x old &reg1 %08x &reg2 %08x, &imm1, &imm2\n"
117          .byte 0
118          .text
119       li $ra, &mem1
120       lw &reg1, &offset1($ra)
121       li $ra, &mem2
122       lw &reg2, &offset2($ra)
123       &instruction &reg1, &reg2, &imm1, &imm2
124       move $a1, &reg1
125       li $a0, &label
126       lw $a3, &offset2($ra)
127       li $ra, &mem1
128       lw $a2, &offset1($ra)
129       lapc[48] $t9, mwrap_printf
130       jalrc $t9
131    .endm
133    .macro THREE_REG_1_IMM label, instruction, reg1, reg2, reg3, offset1, offset2, mem1, mem2, imm
134        .data
135        &label:
136          .ascii "&instruction &reg1 %08x &reg2 %08x &reg3 %08x, &imm\n"
137          .byte 0
138        .text
139          li $ra, &mem1
140          lw &reg2, &offset1($ra)
141          li $ra, &mem2
142          lw &reg3, &offset2($ra)
143          &instruction &reg1, &reg2, &reg3, &imm
144          move $a1, &reg1
145          li $a0, &label
146          lw $a3, &offset2($ra)
147          li $ra, &mem1
148          lw $a2, &offset1($ra)
149          lapc[48] $t9, mwrap_printf
150          jalrc $t9
151    .endm
153    .globl main
154    .ent   main
155    .type  main, @function
156 main:
157    .set  noreorder
158    .set  nomacro
159    save  16, $ra
161 # clo
162    TWO_REG message1, clo, $a2, $s1, 28, test_words
163    TWO_REG message2, clo, $s0, $a6, 20, test_words
164    TWO_REG message3, clo, $t0, $s4, 12, test_words
165    TWO_REG message4, clo, $t0, $a7, 12, test_words
166    TWO_REG message5, clo, $s0, $a2, 28, test_words
167    TWO_REG message6, clo, $s0, $s0, 20, test_words
168    TWO_REG message7, clo, $s2, $s0, 8, test_words
169    TWO_REG message8, clo, $a7, $s4, 4, test_words
170    TWO_REG message9, clo, $a7, $s4, 4, test_words
171    TWO_REG message10, clo, $s2, $s1, 28, test_words
172    TWO_REG message11, clo, $s0, $a3, 4, test_words
173    TWO_REG message12, clo, $s7, $s3, 28, test_words
174    TWO_REG message13, clo, $s4, $t3, 28, test_words
175    TWO_REG message14, clo, $a3, $t0, 8, test_words
176    TWO_REG message15, clo, $s3, $a4, 20, test_words
177    TWO_REG message16, clo, $a2, $a4, 4, test_words
178    TWO_REG message17, clo, $s7, $a6, 20, test_words
179    TWO_REG message18, clo, $s2, $s5, 8, test_words
180    TWO_REG message19, clo, $s7, $a0, 8, test_words
181    TWO_REG message20, clo, $a5, $s2, 28, test_words
183 # clz
184    TWO_REG message21, clz, $a4, $s2, 12, test_words
185    TWO_REG message22, clz, $s5, $a6, 24, test_words
186    TWO_REG message23, clz, $s0, $s2, 8, test_words
187    TWO_REG message24, clz, $t0, $s6, 24, test_words
188    TWO_REG message25, clz, $s6, $t1, 24, test_words
189    TWO_REG message26, clz, $s7, $s3, 24, test_words
190    TWO_REG message27, clz, $a5, $a6, 0, test_words
191    TWO_REG message28, clz, $a6, $s0, 20, test_words
192    TWO_REG message29, clz, $a0, $a4, 20, test_words
193    TWO_REG message30, clz, $a6, $a1, 12, test_words
194    TWO_REG message31, clz, $s6, $a5, 4, test_words
195    TWO_REG message32, clz, $a5, $t3, 28, test_words
196    TWO_REG message33, clz, $t3, $a7, 8, test_words
197    TWO_REG message34, clz, $s5, $s7, 16, test_words
198    TWO_REG message35, clz, $s7, $s2, 4, test_words
199    TWO_REG message36, clz, $s5, $a5, 0, test_words
200    TWO_REG message37, clz, $s7, $a2, 24, test_words
201    TWO_REG message38, clz, $a3, $s1, 28, test_words
202    TWO_REG message39, clz, $a4, $s1, 12, test_words
203    TWO_REG message40, clz, $t1, $t0, 16, test_words
205 # not
206    TWO_REG message41, not, $a0, $s2, 4, test_words
207    TWO_REG message42, not, $a2, $s3, 16, test_words
208    TWO_REG message43, not, $a1, $s2, 16, test_words
209    TWO_REG message44, not, $a3, $a0, 28, test_words
210    TWO_REG message45, not, $s3, $s3, 4, test_words
211    TWO_REG message46, not, $a0, $s1, 28, test_words
212    TWO_REG message47, not, $a0, $a0, 4, test_words
213    TWO_REG message48, not, $s3, $s0, 24, test_words
214    TWO_REG message49, not, $s2, $s0, 0, test_words
215    TWO_REG message50, not, $a1, $a2, 0, test_words
216    TWO_REG message51, not, $s1, $a2, 24, test_words
217    TWO_REG message52, not, $s2, $s0, 20, test_words
218    TWO_REG message53, not, $a3, $s2, 12, test_words
219    TWO_REG message54, not, $s3, $a1, 12, test_words
220    TWO_REG message55, not, $s2, $a1, 12, test_words
221    TWO_REG message56, not, $a0, $a1, 0, test_words
222    TWO_REG message57, not, $s3, $a2, 0, test_words
223    TWO_REG message58, not, $a0, $a1, 16, test_words
224    TWO_REG message59, not, $s3, $s3, 4, test_words
225    TWO_REG message60, not, $s3, $a0, 12, test_words
227 # seb
228    TWO_REG message61, seb, $t3, $s1, 20, test_words
229    TWO_REG message62, seb, $a5, $a3, 8, test_words
230    TWO_REG message63, seb, $a2, $t2, 0, test_words
231    TWO_REG message64, seb, $t1, $s1, 4, test_words
232    TWO_REG message65, seb, $s1, $t0, 8, test_words
233    TWO_REG message66, seb, $s4, $s0, 16, test_words
234    TWO_REG message67, seb, $a4, $s3, 24, test_words
235    TWO_REG message68, seb, $t0, $t3, 28, test_words
236    TWO_REG message69, seb, $a5, $s2, 24, test_words
237    TWO_REG message70, seb, $a6, $s1, 24, test_words
238    TWO_REG message71, seb, $t1, $a0, 12, test_words
239    TWO_REG message72, seb, $t2, $a5, 24, test_words
240    TWO_REG message73, seb, $s0, $t3, 20, test_words
241    TWO_REG message74, seb, $s0, $t1, 8, test_words
242    TWO_REG message75, seb, $a2, $a6, 24, test_words
243    TWO_REG message76, seb, $t0, $s2, 8, test_words
244    TWO_REG message77, seb, $s4, $s6, 20, test_words
245    TWO_REG message78, seb, $s6, $a2, 4, test_words
246    TWO_REG message79, seb, $a1, $t3, 12, test_words
247    TWO_REG message80, seb, $a3, $a5, 20, test_words
249 # seh
250    TWO_REG message81, seh, $a1, $a2, 20, test_words
251    TWO_REG message82, seh, $a0, $s5, 12, test_words
252    TWO_REG message83, seh, $a3, $a1, 8, test_words
253    TWO_REG message84, seh, $a4, $s2, 28, test_words
254    TWO_REG message85, seh, $a6, $s4, 20, test_words
255    TWO_REG message86, seh, $a5, $a0, 28, test_words
256    TWO_REG message87, seh, $a3, $a5, 20, test_words
257    TWO_REG message88, seh, $a5, $t3, 0, test_words
258    TWO_REG message89, seh, $s6, $s5, 12, test_words
259    TWO_REG message90, seh, $a5, $s0, 4, test_words
260    TWO_REG message91, seh, $t2, $s2, 12, test_words
261    TWO_REG message92, seh, $a0, $a2, 0, test_words
262    TWO_REG message93, seh, $s3, $a5, 8, test_words
263    TWO_REG message94, seh, $s1, $s1, 0, test_words
264    TWO_REG message95, seh, $t1, $s0, 16, test_words
265    TWO_REG message96, seh, $s2, $a5, 0, test_words
266    TWO_REG message97, seh, $s6, $s0, 4, test_words
267    TWO_REG message98, seh, $a3, $a5, 20, test_words
268    TWO_REG message99, seh, $s7, $t3, 8, test_words
269    TWO_REG message100, seh, $a7, $t1, 24, test_words
271 # and[32]
272    THREE_REG message101, and[32], $t0, $s7, $s4, 12, 28, test_words, test_words
273    THREE_REG message102, and[32], $s7, $t0, $t2, 16, 24, test_words, test_words
274    THREE_REG message103, and[32], $a0, $a2, $s6, 4, 24, test_words, test_words
275    THREE_REG message104, and[32], $a6, $a7, $a7, 8, 20, test_words, test_words
276    THREE_REG message105, and[32], $a7, $a0, $t1, 20, 4, test_words, test_words
277    THREE_REG message106, and[32], $s4, $a4, $a3, 12, 20, test_words, test_words
278    THREE_REG message107, and[32], $a5, $t3, $s1, 8, 28, test_words, test_words
279    THREE_REG message108, and[32], $s0, $t1, $t3, 28, 4, test_words, test_words
280    THREE_REG message109, and[32], $a5, $a7, $a3, 28, 0, test_words, test_words
281    THREE_REG message110, and[32], $a5, $t1, $s3, 0, 12, test_words, test_words
282    THREE_REG message111, and[32], $a5, $a0, $t3, 24, 20, test_words, test_words
283    THREE_REG message112, and[32], $s0, $s6, $s1, 12, 24, test_words, test_words
284    THREE_REG message113, and[32], $s3, $s1, $t1, 16, 28, test_words, test_words
285    THREE_REG message114, and[32], $s0, $a0, $s0, 12, 12, test_words, test_words
286    THREE_REG message115, and[32], $t1, $s4, $a6, 4, 12, test_words, test_words
287    THREE_REG message116, and[32], $a2, $t2, $a0, 8, 12, test_words, test_words
288    THREE_REG message117, and[32], $a0, $s3, $a3, 28, 20, test_words, test_words
289    THREE_REG message118, and[32], $s0, $a0, $t3, 20, 12, test_words, test_words
290    THREE_REG message119, and[32], $s1, $a0, $a4, 28, 16, test_words, test_words
291    THREE_REG message120, and[32], $s7, $a7, $s5, 12, 12, test_words, test_words
292    THREE_REG message121, and[32], $s4, $s5, $t3, 28, 8, test_words, test_words
293    THREE_REG message122, and[32], $a3, $a1, $t0, 28, 12, test_words, test_words
294    THREE_REG message123, and[32], $a7, $a7, $s2, 8, 28, test_words, test_words
295    THREE_REG message124, and[32], $a3, $s2, $t3, 28, 0, test_words, test_words
296    THREE_REG message125, and[32], $s6, $a4, $s0, 12, 12, test_words, test_words
297    THREE_REG message126, and[32], $s5, $t2, $s3, 24, 24, test_words, test_words
298    THREE_REG message127, and[32], $t2, $s2, $t3, 20, 4, test_words, test_words
299    THREE_REG message128, and[32], $t1, $s4, $a3, 20, 0, test_words, test_words
300    THREE_REG message129, and[32], $a2, $s5, $a7, 4, 28, test_words, test_words
301    THREE_REG message130, and[32], $a6, $s0, $t2, 20, 28, test_words, test_words
302    THREE_REG message131, and[32], $t2, $a4, $s4, 8, 12, test_words, test_words
303    THREE_REG message132, and[32], $s7, $s3, $a5, 8, 20, test_words, test_words
304    THREE_REG message133, and[32], $s3, $t0, $a0, 8, 24, test_words, test_words
305    THREE_REG message134, and[32], $a1, $t3, $t2, 16, 4, test_words, test_words
306    THREE_REG message135, and[32], $t2, $t3, $t2, 24, 16, test_words, test_words
307    THREE_REG message136, and[32], $a5, $t0, $a4, 28, 8, test_words, test_words
308    THREE_REG message137, and[32], $a0, $a1, $s2, 0, 16, test_words, test_words
309    THREE_REG message138, and[32], $t1, $t3, $a3, 8, 8, test_words, test_words
310    THREE_REG message139, and[32], $s5, $t2, $s6, 4, 0, test_words, test_words
311    THREE_REG message140, and[32], $s0, $s6, $a0, 28, 28, test_words, test_words
313 # nor
314    THREE_REG message141, nor, $a5, $t1, $a2, 12, 12, test_words, test_words
315    THREE_REG message142, nor, $a6, $a0, $a4, 8, 0, test_words, test_words
316    THREE_REG message143, nor, $s2, $a2, $t1, 16, 24, test_words, test_words
317    THREE_REG message144, nor, $s1, $a1, $a6, 4, 12, test_words, test_words
318    THREE_REG message145, nor, $a4, $t2, $s5, 8, 12, test_words, test_words
319    THREE_REG message146, nor, $s6, $t3, $s1, 24, 8, test_words, test_words
320    THREE_REG message147, nor, $a0, $a3, $t3, 24, 24, test_words, test_words
321    THREE_REG message148, nor, $a7, $a0, $a6, 12, 28, test_words, test_words
322    THREE_REG message149, nor, $a2, $s5, $t1, 0, 4, test_words, test_words
323    THREE_REG message150, nor, $a4, $s1, $a6, 8, 24, test_words, test_words
324    THREE_REG message151, nor, $s5, $a6, $a4, 28, 16, test_words, test_words
325    THREE_REG message152, nor, $a7, $a5, $a7, 4, 28, test_words, test_words
326    THREE_REG message153, nor, $t1, $s1, $s6, 4, 16, test_words, test_words
327    THREE_REG message154, nor, $s4, $a4, $t0, 24, 28, test_words, test_words
328    THREE_REG message155, nor, $s3, $s5, $a0, 20, 20, test_words, test_words
329    THREE_REG message156, nor, $t1, $a5, $a6, 28, 12, test_words, test_words
330    THREE_REG message157, nor, $s5, $s0, $s5, 4, 12, test_words, test_words
331    THREE_REG message158, nor, $s1, $a5, $a4, 4, 24, test_words, test_words
332    THREE_REG message159, nor, $a7, $s6, $a3, 20, 12, test_words, test_words
333    THREE_REG message160, nor, $t3, $a5, $a7, 0, 16, test_words, test_words
334    THREE_REG message161, nor, $s6, $t3, $s5, 8, 16, test_words, test_words
335    THREE_REG message162, nor, $t2, $a3, $s5, 0, 24, test_words, test_words
336    THREE_REG message163, nor, $a0, $s1, $t3, 20, 12, test_words, test_words
337    THREE_REG message164, nor, $s2, $s7, $a4, 12, 0, test_words, test_words
338    THREE_REG message165, nor, $t2, $a2, $t2, 4, 16, test_words, test_words
339    THREE_REG message166, nor, $a2, $a1, $s5, 20, 4, test_words, test_words
340    THREE_REG message167, nor, $a1, $t0, $s0, 24, 24, test_words, test_words
341    THREE_REG message168, nor, $s1, $a4, $a6, 8, 20, test_words, test_words
342    THREE_REG message169, nor, $t0, $s7, $a2, 28, 0, test_words, test_words
343    THREE_REG message170, nor, $s1, $s2, $s7, 4, 4, test_words, test_words
344    THREE_REG message171, nor, $t3, $a3, $t3, 8, 4, test_words, test_words
345    THREE_REG message172, nor, $a7, $s4, $t2, 20, 20, test_words, test_words
346    THREE_REG message173, nor, $t3, $a6, $s1, 12, 4, test_words, test_words
347    THREE_REG message174, nor, $s4, $t0, $s1, 24, 12, test_words, test_words
348    THREE_REG message175, nor, $a2, $t2, $t2, 4, 8, test_words, test_words
349    THREE_REG message176, nor, $t2, $a6, $s0, 24, 16, test_words, test_words
350    THREE_REG message177, nor, $a5, $t1, $s7, 0, 28, test_words, test_words
351    THREE_REG message178, nor, $s4, $a4, $a3, 24, 4, test_words, test_words
352    THREE_REG message179, nor, $t1, $a1, $s7, 24, 20, test_words, test_words
353    THREE_REG message180, nor, $a0, $s2, $s1, 8, 16, test_words, test_words
355 # or[32]
356    THREE_REG message181, or[32], $a0, $s4, $a3, 24, 20, test_words, test_words
357    THREE_REG message182, or[32], $a1, $a1, $t0, 4, 12, test_words, test_words
358    THREE_REG message183, or[32], $s0, $a6, $t0, 28, 8, test_words, test_words
359    THREE_REG message184, or[32], $t0, $a0, $t2, 28, 8, test_words, test_words
360    THREE_REG message185, or[32], $t3, $s0, $s0, 12, 12, test_words, test_words
361    THREE_REG message186, or[32], $s1, $s7, $s1, 24, 4, test_words, test_words
362    THREE_REG message187, or[32], $a2, $s3, $s2, 20, 20, test_words, test_words
363    THREE_REG message188, or[32], $t3, $t2, $s6, 12, 28, test_words, test_words
364    THREE_REG message189, or[32], $s5, $s7, $s1, 24, 28, test_words, test_words
365    THREE_REG message190, or[32], $a3, $t2, $a3, 8, 20, test_words, test_words
366    THREE_REG message191, or[32], $t1, $s5, $s2, 4, 16, test_words, test_words
367    THREE_REG message192, or[32], $t1, $a6, $t0, 24, 4, test_words, test_words
368    THREE_REG message193, or[32], $a5, $a0, $a0, 12, 4, test_words, test_words
369    THREE_REG message194, or[32], $s5, $a7, $s7, 0, 8, test_words, test_words
370    THREE_REG message195, or[32], $a6, $a1, $s2, 28, 12, test_words, test_words
371    THREE_REG message196, or[32], $a5, $t3, $s5, 16, 20, test_words, test_words
372    THREE_REG message197, or[32], $s7, $t1, $t2, 4, 12, test_words, test_words
373    THREE_REG message198, or[32], $a7, $a2, $s5, 28, 16, test_words, test_words
374    THREE_REG message199, or[32], $a2, $a0, $a1, 24, 0, test_words, test_words
375    THREE_REG message200, or[32], $t2, $t0, $s7, 8, 16, test_words, test_words
376    THREE_REG message201, or[32], $s1, $a4, $s1, 12, 0, test_words, test_words
377    THREE_REG message202, or[32], $a5, $t0, $a3, 24, 0, test_words, test_words
378    THREE_REG message203, or[32], $s0, $s5, $a6, 24, 24, test_words, test_words
379    THREE_REG message204, or[32], $s5, $a5, $s4, 8, 0, test_words, test_words
380    THREE_REG message205, or[32], $a5, $s1, $s5, 8, 28, test_words, test_words
381    THREE_REG message206, or[32], $s5, $t0, $s3, 16, 24, test_words, test_words
382    THREE_REG message207, or[32], $a7, $a1, $s3, 4, 4, test_words, test_words
383    THREE_REG message208, or[32], $a3, $s6, $a1, 8, 16, test_words, test_words
384    THREE_REG message209, or[32], $s2, $s6, $t2, 0, 0, test_words, test_words
385    THREE_REG message210, or[32], $s0, $a1, $a6, 20, 28, test_words, test_words
386    THREE_REG message211, or[32], $t2, $t2, $s0, 28, 0, test_words, test_words
387    THREE_REG message212, or[32], $s4, $t0, $a4, 12, 0, test_words, test_words
388    THREE_REG message213, or[32], $t3, $s7, $s2, 8, 16, test_words, test_words
389    THREE_REG message214, or[32], $s7, $a5, $s2, 16, 12, test_words, test_words
390    THREE_REG message215, or[32], $s6, $t2, $t1, 0, 8, test_words, test_words
391    THREE_REG message216, or[32], $s1, $s5, $a7, 28, 24, test_words, test_words
392    THREE_REG message217, or[32], $a7, $t2, $t0, 28, 4, test_words, test_words
393    THREE_REG message218, or[32], $s4, $s3, $a2, 0, 12, test_words, test_words
394    THREE_REG message219, or[32], $s2, $a7, $a2, 16, 20, test_words, test_words
395    THREE_REG message220, or[32], $a6, $s7, $s6, 16, 0, test_words, test_words
397 # xor[32]
398    THREE_REG message221, xor[32], $t1, $a2, $a2, 24, 12, test_words, test_words
399    THREE_REG message222, xor[32], $s1, $t0, $a4, 16, 12, test_words, test_words
400    THREE_REG message223, xor[32], $a2, $s7, $a5, 24, 12, test_words, test_words
401    THREE_REG message224, xor[32], $t3, $a2, $s6, 20, 8, test_words, test_words
402    THREE_REG message225, xor[32], $a1, $a3, $t2, 12, 0, test_words, test_words
403    THREE_REG message226, xor[32], $a7, $a1, $s3, 8, 4, test_words, test_words
404    THREE_REG message227, xor[32], $s7, $s3, $a4, 24, 8, test_words, test_words
405    THREE_REG message228, xor[32], $a3, $t3, $a6, 12, 28, test_words, test_words
406    THREE_REG message229, xor[32], $s5, $s1, $s7, 28, 12, test_words, test_words
407    THREE_REG message230, xor[32], $t2, $t2, $a1, 0, 12, test_words, test_words
408    THREE_REG message231, xor[32], $s3, $a6, $a6, 20, 4, test_words, test_words
409    THREE_REG message232, xor[32], $s2, $s1, $a3, 8, 12, test_words, test_words
410    THREE_REG message233, xor[32], $a4, $s1, $a2, 16, 12, test_words, test_words
411    THREE_REG message234, xor[32], $s4, $a3, $s2, 24, 24, test_words, test_words
412    THREE_REG message235, xor[32], $s2, $s4, $a3, 4, 28, test_words, test_words
413    THREE_REG message236, xor[32], $a2, $a3, $s5, 12, 28, test_words, test_words
414    THREE_REG message237, xor[32], $a4, $a7, $s5, 24, 0, test_words, test_words
415    THREE_REG message238, xor[32], $s7, $s5, $t1, 24, 28, test_words, test_words
416    THREE_REG message239, xor[32], $a0, $a6, $s0, 12, 12, test_words, test_words
417    THREE_REG message240, xor[32], $a0, $a7, $a2, 24, 8, test_words, test_words
418    THREE_REG message241, xor[32], $t1, $a0, $s2, 0, 20, test_words, test_words
419    THREE_REG message242, xor[32], $s5, $a3, $a0, 24, 8, test_words, test_words
420    THREE_REG message243, xor[32], $s0, $a2, $t1, 4, 16, test_words, test_words
421    THREE_REG message244, xor[32], $t2, $a0, $s1, 28, 24, test_words, test_words
422    THREE_REG message245, xor[32], $s0, $t0, $a1, 20, 28, test_words, test_words
423    THREE_REG message246, xor[32], $s0, $t1, $s2, 24, 12, test_words, test_words
424    THREE_REG message247, xor[32], $s0, $t3, $a0, 24, 16, test_words, test_words
425    THREE_REG message248, xor[32], $t1, $s7, $s7, 8, 20, test_words, test_words
426    THREE_REG message249, xor[32], $a5, $t2, $a7, 12, 28, test_words, test_words
427    THREE_REG message250, xor[32], $s4, $a5, $t0, 4, 0, test_words, test_words
428    THREE_REG message251, xor[32], $t2, $a2, $s0, 12, 28, test_words, test_words
429    THREE_REG message252, xor[32], $s3, $t3, $s0, 24, 8, test_words, test_words
430    THREE_REG message253, xor[32], $a7, $s6, $a5, 28, 4, test_words, test_words
431    THREE_REG message254, xor[32], $a5, $s1, $s4, 16, 28, test_words, test_words
432    THREE_REG message255, xor[32], $a6, $s2, $s1, 4, 20, test_words, test_words
433    THREE_REG message256, xor[32], $a4, $s1, $a2, 16, 12, test_words, test_words
434    THREE_REG message257, xor[32], $s6, $s3, $t1, 12, 24, test_words, test_words
435    THREE_REG message258, xor[32], $s0, $a6, $s6, 0, 16, test_words, test_words
436    THREE_REG message259, xor[32], $s0, $a7, $a7, 4, 28, test_words, test_words
437    THREE_REG message260, xor[32], $a4, $s3, $s0, 0, 28, test_words, test_words
439 # and[16]
440    TWO_REG_16 message261, and[16], $a3, $s2, 4, 0, test_words, test_words
441    TWO_REG_16 message262, and[16], $a0, $s2, 16, 4, test_words, test_words
442    TWO_REG_16 message263, and[16], $s0, $a1, 16, 12, test_words, test_words
443    TWO_REG_16 message264, and[16], $s0, $a1, 24, 8, test_words, test_words
444    TWO_REG_16 message265, and[16], $s1, $s0, 16, 20, test_words, test_words
445    TWO_REG_16 message266, and[16], $a1, $a0, 20, 0, test_words, test_words
446    TWO_REG_16 message267, and[16], $a2, $s0, 0, 20, test_words, test_words
447    TWO_REG_16 message268, and[16], $a0, $a0, 16, 12, test_words, test_words
448    TWO_REG_16 message269, and[16], $s3, $s2, 12, 28, test_words, test_words
449    TWO_REG_16 message270, and[16], $s0, $s3, 0, 4, test_words, test_words
450    TWO_REG_16 message271, and[16], $a0, $s1, 16, 16, test_words, test_words
451    TWO_REG_16 message272, and[16], $s2, $a2, 28, 16, test_words, test_words
452    TWO_REG_16 message273, and[16], $s2, $a3, 4, 28, test_words, test_words
453    TWO_REG_16 message274, and[16], $s0, $s2, 28, 24, test_words, test_words
454    TWO_REG_16 message275, and[16], $a2, $s3, 12, 8, test_words, test_words
455    TWO_REG_16 message276, and[16], $a0, $s3, 20, 28, test_words, test_words
456    TWO_REG_16 message277, and[16], $s1, $a0, 24, 8, test_words, test_words
457    TWO_REG_16 message278, and[16], $a0, $s2, 12, 0, test_words, test_words
458    TWO_REG_16 message279, and[16], $a3, $s3, 20, 8, test_words, test_words
459    TWO_REG_16 message280, and[16], $a1, $s0, 24, 28, test_words, test_words
461 # or[16]
462    TWO_REG_16 message281, or[16], $s3, $s3, 28, 12, test_words, test_words
463    TWO_REG_16 message282, or[16], $s2, $s2, 4, 0, test_words, test_words
464    TWO_REG_16 message283, or[16], $s2, $s0, 12, 24, test_words, test_words
465    TWO_REG_16 message284, or[16], $s0, $a0, 20, 4, test_words, test_words
466    TWO_REG_16 message285, or[16], $a1, $a3, 12, 4, test_words, test_words
467    TWO_REG_16 message286, or[16], $a1, $s2, 4, 20, test_words, test_words
468    TWO_REG_16 message287, or[16], $s1, $s2, 28, 24, test_words, test_words
469    TWO_REG_16 message288, or[16], $a2, $s1, 24, 8, test_words, test_words
470    TWO_REG_16 message289, or[16], $s0, $s1, 20, 8, test_words, test_words
471    TWO_REG_16 message290, or[16], $a3, $s3, 12, 4, test_words, test_words
472    TWO_REG_16 message291, or[16], $a3, $s2, 28, 28, test_words, test_words
473    TWO_REG_16 message292, or[16], $s2, $s0, 4, 28, test_words, test_words
474    TWO_REG_16 message293, or[16], $s3, $s0, 0, 4, test_words, test_words
475    TWO_REG_16 message294, or[16], $a3, $a2, 24, 0, test_words, test_words
476    TWO_REG_16 message295, or[16], $a0, $s1, 28, 12, test_words, test_words
477    TWO_REG_16 message296, or[16], $a2, $s1, 20, 24, test_words, test_words
478    TWO_REG_16 message297, or[16], $a2, $a2, 4, 20, test_words, test_words
479    TWO_REG_16 message298, or[16], $a1, $s0, 28, 20, test_words, test_words
480    TWO_REG_16 message299, or[16], $a2, $s2, 16, 0, test_words, test_words
481    TWO_REG_16 message300, or[16], $a3, $s1, 0, 8, test_words, test_words
483 # xor[16]
484    TWO_REG_16 message301, xor[16], $a2, $a0, 12, 20, test_words, test_words
485    TWO_REG_16 message302, xor[16], $a2, $a1, 20, 12, test_words, test_words
486    TWO_REG_16 message303, xor[16], $s2, $s0, 24, 0, test_words, test_words
487    TWO_REG_16 message304, xor[16], $a1, $a3, 28, 12, test_words, test_words
488    TWO_REG_16 message305, xor[16], $s1, $a0, 4, 28, test_words, test_words
489    TWO_REG_16 message306, xor[16], $s0, $a0, 16, 24, test_words, test_words
490    TWO_REG_16 message307, xor[16], $s2, $a0, 24, 4, test_words, test_words
491    TWO_REG_16 message308, xor[16], $s2, $s2, 16, 0, test_words, test_words
492    TWO_REG_16 message309, xor[16], $s3, $s3, 20, 4, test_words, test_words
493    TWO_REG_16 message310, xor[16], $a1, $a2, 16, 28, test_words, test_words
494    TWO_REG_16 message311, xor[16], $s3, $a2, 0, 0, test_words, test_words
495    TWO_REG_16 message312, xor[16], $s1, $s3, 16, 12, test_words, test_words
496    TWO_REG_16 message313, xor[16], $s3, $s1, 8, 12, test_words, test_words
497    TWO_REG_16 message314, xor[16], $s1, $s2, 4, 12, test_words, test_words
498    TWO_REG_16 message315, xor[16], $s2, $s3, 20, 16, test_words, test_words
499    TWO_REG_16 message316, xor[16], $s2, $a1, 16, 20, test_words, test_words
500    TWO_REG_16 message317, xor[16], $a0, $a1, 24, 4, test_words, test_words
501    TWO_REG_16 message318, xor[16], $s0, $a3, 4, 12, test_words, test_words
502    TWO_REG_16 message319, xor[16], $s1, $a1, 12, 12, test_words, test_words
503    TWO_REG_16 message320, xor[16], $a0, $s3, 24, 28, test_words, test_words
505 # rotrv
506    THREE_REG message321, rotrv, $a4, $s4, $a2, 4, 24, test_words, test_shifts
507    THREE_REG message322, rotrv, $s3, $s1, $a4, 8, 8, test_words, test_shifts
508    THREE_REG message323, rotrv, $t1, $s0, $s7, 20, 20, test_words, test_shifts
509    THREE_REG message324, rotrv, $a7, $s7, $t0, 20, 12, test_words, test_shifts
510    THREE_REG message325, rotrv, $s7, $a6, $a6, 16, 28, test_words, test_shifts
511    THREE_REG message326, rotrv, $a5, $a3, $s7, 4, 20, test_words, test_shifts
512    THREE_REG message327, rotrv, $s2, $s5, $s5, 0, 28, test_words, test_shifts
513    THREE_REG message328, rotrv, $a7, $s7, $t0, 0, 20, test_words, test_shifts
514    THREE_REG message329, rotrv, $t2, $a1, $a6, 4, 24, test_words, test_shifts
515    THREE_REG message330, rotrv, $s3, $a0, $s5, 28, 4, test_words, test_shifts
516    THREE_REG message331, rotrv, $a4, $a6, $s3, 24, 12, test_words, test_shifts
517    THREE_REG message332, rotrv, $a2, $s0, $t2, 20, 4, test_words, test_shifts
518    THREE_REG message333, rotrv, $s0, $t3, $t2, 20, 12, test_words, test_shifts
519    THREE_REG message334, rotrv, $t1, $a1, $t2, 4, 4, test_words, test_shifts
520    THREE_REG message335, rotrv, $t0, $s3, $t2, 8, 0, test_words, test_shifts
521    THREE_REG message336, rotrv, $a4, $a5, $t1, 24, 20, test_words, test_shifts
522    THREE_REG message337, rotrv, $s2, $s6, $a3, 24, 20, test_words, test_shifts
523    THREE_REG message338, rotrv, $t2, $s0, $a5, 4, 8, test_words, test_shifts
524    THREE_REG message339, rotrv, $a2, $t1, $t1, 16, 24, test_words, test_shifts
525    THREE_REG message340, rotrv, $a1, $s2, $a3, 28, 12, test_words, test_shifts
526    THREE_REG message341, rotrv, $a0, $a7, $t3, 8, 20, test_words, test_shifts
527    THREE_REG message342, rotrv, $a3, $s7, $a7, 0, 4, test_words, test_shifts
528    THREE_REG message343, rotrv, $s4, $s7, $t3, 12, 20, test_words, test_shifts
529    THREE_REG message344, rotrv, $t0, $a6, $s1, 4, 12, test_words, test_shifts
530    THREE_REG message345, rotrv, $a7, $s7, $a0, 4, 16, test_words, test_shifts
531    THREE_REG message346, rotrv, $a2, $s2, $t2, 8, 4, test_words, test_shifts
532    THREE_REG message347, rotrv, $a5, $a6, $a1, 16, 20, test_words, test_shifts
533    THREE_REG message348, rotrv, $a2, $a0, $s4, 20, 0, test_words, test_shifts
534    THREE_REG message349, rotrv, $t1, $s5, $a7, 0, 4, test_words, test_shifts
535    THREE_REG message350, rotrv, $s0, $t1, $t3, 24, 24, test_words, test_shifts
536    THREE_REG message351, rotrv, $s6, $t1, $a6, 8, 8, test_words, test_shifts
537    THREE_REG message352, rotrv, $a6, $s0, $s0, 0, 24, test_words, test_shifts
538    THREE_REG message353, rotrv, $a2, $a1, $a1, 12, 24, test_words, test_shifts
539    THREE_REG message354, rotrv, $t2, $s1, $a6, 24, 12, test_words, test_shifts
540    THREE_REG message355, rotrv, $s2, $t3, $a4, 24, 28, test_words, test_shifts
541    THREE_REG message356, rotrv, $t1, $t2, $a4, 16, 0, test_words, test_shifts
542    THREE_REG message357, rotrv, $s7, $a2, $t2, 4, 16, test_words, test_shifts
543    THREE_REG message358, rotrv, $t0, $t3, $t1, 4, 12, test_words, test_shifts
544    THREE_REG message359, rotrv, $a3, $t3, $s0, 0, 8, test_words, test_shifts
545    THREE_REG message360, rotrv, $s6, $a2, $s7, 0, 16, test_words, test_shifts
547 # sllv
548    THREE_REG message361, sllv, $a6, $a3, $a3, 12, 20, test_words, test_shifts
549    THREE_REG message362, sllv, $a3, $s4, $a3, 28, 4, test_words, test_shifts
550    THREE_REG message363, sllv, $a4, $s6, $s7, 8, 12, test_words, test_shifts
551    THREE_REG message364, sllv, $a4, $a2, $t2, 4, 28, test_words, test_shifts
552    THREE_REG message365, sllv, $a5, $t0, $t2, 24, 4, test_words, test_shifts
553    THREE_REG message366, sllv, $t0, $a0, $s7, 0, 4, test_words, test_shifts
554    THREE_REG message367, sllv, $s4, $t2, $s0, 28, 20, test_words, test_shifts
555    THREE_REG message368, sllv, $s5, $t2, $a6, 16, 8, test_words, test_shifts
556    THREE_REG message369, sllv, $t3, $a4, $s4, 24, 24, test_words, test_shifts
557    THREE_REG message370, sllv, $a4, $t2, $s5, 24, 28, test_words, test_shifts
558    THREE_REG message371, sllv, $s4, $a0, $s0, 12, 24, test_words, test_shifts
559    THREE_REG message372, sllv, $a1, $t3, $s6, 0, 12, test_words, test_shifts
560    THREE_REG message373, sllv, $t3, $a0, $a2, 28, 16, test_words, test_shifts
561    THREE_REG message374, sllv, $s7, $a0, $a6, 20, 4, test_words, test_shifts
562    THREE_REG message375, sllv, $t0, $s4, $a5, 20, 28, test_words, test_shifts
563    THREE_REG message376, sllv, $a4, $a5, $a5, 4, 12, test_words, test_shifts
564    THREE_REG message377, sllv, $s1, $a1, $t3, 20, 0, test_words, test_shifts
565    THREE_REG message378, sllv, $a5, $a2, $a4, 0, 24, test_words, test_shifts
566    THREE_REG message379, sllv, $a7, $s3, $s3, 20, 28, test_words, test_shifts
567    THREE_REG message380, sllv, $s3, $t1, $s3, 20, 24, test_words, test_shifts
568    THREE_REG message381, sllv, $s4, $a6, $s7, 8, 12, test_words, test_shifts
569    THREE_REG message382, sllv, $a2, $s6, $a4, 12, 28, test_words, test_shifts
570    THREE_REG message383, sllv, $a3, $s0, $a4, 28, 20, test_words, test_shifts
571    THREE_REG message384, sllv, $a1, $a0, $s3, 4, 0, test_words, test_shifts
572    THREE_REG message385, sllv, $s6, $a4, $a4, 20, 24, test_words, test_shifts
573    THREE_REG message386, sllv, $s7, $s0, $s7, 8, 4, test_words, test_shifts
574    THREE_REG message387, sllv, $a5, $s3, $a3, 16, 4, test_words, test_shifts
575    THREE_REG message388, sllv, $a2, $s6, $a7, 8, 24, test_words, test_shifts
576    THREE_REG message389, sllv, $a2, $a2, $s6, 8, 20, test_words, test_shifts
577    THREE_REG message390, sllv, $t0, $t3, $t1, 28, 0, test_words, test_shifts
578    THREE_REG message391, sllv, $s2, $s5, $a1, 24, 24, test_words, test_shifts
579    THREE_REG message392, sllv, $t3, $a1, $s2, 24, 28, test_words, test_shifts
580    THREE_REG message393, sllv, $s0, $t3, $a2, 12, 0, test_words, test_shifts
581    THREE_REG message394, sllv, $s7, $t2, $a6, 24, 0, test_words, test_shifts
582    THREE_REG message395, sllv, $s4, $t0, $s2, 28, 28, test_words, test_shifts
583    THREE_REG message396, sllv, $t3, $a3, $s6, 4, 8, test_words, test_shifts
584    THREE_REG message397, sllv, $s3, $s3, $s0, 0, 20, test_words, test_shifts
585    THREE_REG message398, sllv, $s2, $s3, $s2, 20, 20, test_words, test_shifts
586    THREE_REG message399, sllv, $a1, $a1, $t0, 0, 16, test_words, test_shifts
587    THREE_REG message400, sllv, $a0, $s3, $s6, 12, 24, test_words, test_shifts
589 # srav
590    THREE_REG message401, srav, $s3, $s3, $a2, 4, 8, test_words, test_shifts
591    THREE_REG message402, srav, $t1, $s5, $a5, 0, 24, test_words, test_shifts
592    THREE_REG message403, srav, $a0, $a3, $s5, 16, 28, test_words, test_shifts
593    THREE_REG message404, srav, $a2, $s2, $s2, 16, 12, test_words, test_shifts
594    THREE_REG message405, srav, $a7, $s5, $s4, 12, 20, test_words, test_shifts
595    THREE_REG message406, srav, $s1, $t0, $a1, 12, 28, test_words, test_shifts
596    THREE_REG message407, srav, $a7, $s6, $t2, 20, 0, test_words, test_shifts
597    THREE_REG message408, srav, $a1, $s3, $s5, 8, 28, test_words, test_shifts
598    THREE_REG message409, srav, $s7, $t2, $s2, 0, 24, test_words, test_shifts
599    THREE_REG message410, srav, $t1, $a2, $a1, 12, 24, test_words, test_shifts
600    THREE_REG message411, srav, $s4, $a6, $a7, 20, 4, test_words, test_shifts
601    THREE_REG message412, srav, $t1, $a6, $t1, 24, 4, test_words, test_shifts
602    THREE_REG message413, srav, $s4, $s1, $t0, 28, 24, test_words, test_shifts
603    THREE_REG message414, srav, $t0, $a4, $s5, 20, 24, test_words, test_shifts
604    THREE_REG message415, srav, $s0, $t0, $s5, 8, 0, test_words, test_shifts
605    THREE_REG message416, srav, $a3, $s7, $s2, 16, 8, test_words, test_shifts
606    THREE_REG message417, srav, $a4, $s1, $s4, 12, 8, test_words, test_shifts
607    THREE_REG message418, srav, $a2, $s4, $a4, 28, 8, test_words, test_shifts
608    THREE_REG message419, srav, $s5, $t0, $s3, 4, 12, test_words, test_shifts
609    THREE_REG message420, srav, $a2, $t1, $s7, 28, 24, test_words, test_shifts
610    THREE_REG message421, srav, $s1, $t0, $s6, 24, 24, test_words, test_shifts
611    THREE_REG message422, srav, $a2, $s2, $a2, 0, 8, test_words, test_shifts
612    THREE_REG message423, srav, $s0, $s0, $a7, 4, 16, test_words, test_shifts
613    THREE_REG message424, srav, $a5, $s7, $a4, 4, 8, test_words, test_shifts
614    THREE_REG message425, srav, $t3, $s7, $a2, 24, 16, test_words, test_shifts
615    THREE_REG message426, srav, $s5, $a4, $a6, 0, 0, test_words, test_shifts
616    THREE_REG message427, srav, $a4, $t2, $s0, 12, 16, test_words, test_shifts
617    THREE_REG message428, srav, $s6, $s5, $s6, 0, 8, test_words, test_shifts
618    THREE_REG message429, srav, $a1, $t1, $a6, 16, 8, test_words, test_shifts
619    THREE_REG message430, srav, $s2, $a6, $a5, 28, 28, test_words, test_shifts
620    THREE_REG message431, srav, $s3, $a6, $a2, 24, 0, test_words, test_shifts
621    THREE_REG message432, srav, $s3, $t3, $s5, 20, 0, test_words, test_shifts
622    THREE_REG message433, srav, $a5, $a1, $t2, 20, 16, test_words, test_shifts
623    THREE_REG message434, srav, $s6, $s3, $t2, 20, 0, test_words, test_shifts
624    THREE_REG message435, srav, $s0, $a2, $t1, 8, 24, test_words, test_shifts
625    THREE_REG message436, srav, $a7, $a5, $a0, 0, 0, test_words, test_shifts
626    THREE_REG message437, srav, $t0, $s7, $s2, 24, 20, test_words, test_shifts
627    THREE_REG message438, srav, $t2, $a1, $s5, 12, 8, test_words, test_shifts
628    THREE_REG message439, srav, $s5, $s0, $s4, 12, 4, test_words, test_shifts
629    THREE_REG message440, srav, $t0, $t1, $a5, 24, 8, test_words, test_shifts
631 # srlv
632    THREE_REG message441, srlv, $a5, $s6, $s4, 8, 4, test_words, test_shifts
633    THREE_REG message442, srlv, $a7, $a1, $a6, 28, 20, test_words, test_shifts
634    THREE_REG message443, srlv, $s2, $s7, $a0, 16, 8, test_words, test_shifts
635    THREE_REG message444, srlv, $s6, $s2, $a7, 28, 8, test_words, test_shifts
636    THREE_REG message445, srlv, $a6, $a4, $s2, 24, 28, test_words, test_shifts
637    THREE_REG message446, srlv, $a4, $a6, $s0, 4, 20, test_words, test_shifts
638    THREE_REG message447, srlv, $a7, $t2, $a7, 12, 16, test_words, test_shifts
639    THREE_REG message448, srlv, $s0, $t2, $s5, 24, 24, test_words, test_shifts
640    THREE_REG message449, srlv, $a6, $t0, $a1, 8, 16, test_words, test_shifts
641    THREE_REG message450, srlv, $a7, $s4, $t3, 12, 12, test_words, test_shifts
642    THREE_REG message451, srlv, $s5, $a5, $a7, 12, 12, test_words, test_shifts
643    THREE_REG message452, srlv, $a6, $t3, $s5, 12, 16, test_words, test_shifts
644    THREE_REG message453, srlv, $t2, $s6, $t2, 8, 20, test_words, test_shifts
645    THREE_REG message454, srlv, $s2, $a6, $a4, 12, 20, test_words, test_shifts
646    THREE_REG message455, srlv, $a2, $s5, $a1, 12, 16, test_words, test_shifts
647    THREE_REG message456, srlv, $a2, $a3, $t0, 20, 8, test_words, test_shifts
648    THREE_REG message457, srlv, $a0, $a6, $s7, 12, 20, test_words, test_shifts
649    THREE_REG message458, srlv, $a2, $t2, $a1, 12, 20, test_words, test_shifts
650    THREE_REG message459, srlv, $s5, $s6, $s3, 16, 16, test_words, test_shifts
651    THREE_REG message460, srlv, $t0, $a6, $s2, 0, 8, test_words, test_shifts
652    THREE_REG message461, srlv, $s7, $a6, $s7, 20, 24, test_words, test_shifts
653    THREE_REG message462, srlv, $t3, $a3, $a5, 0, 16, test_words, test_shifts
654    THREE_REG message463, srlv, $a7, $s0, $s6, 24, 28, test_words, test_shifts
655    THREE_REG message464, srlv, $a7, $t0, $t1, 16, 12, test_words, test_shifts
656    THREE_REG message465, srlv, $s6, $s6, $t1, 20, 24, test_words, test_shifts
657    THREE_REG message466, srlv, $s1, $s6, $s0, 16, 8, test_words, test_shifts
658    THREE_REG message467, srlv, $s2, $a7, $a5, 8, 0, test_words, test_shifts
659    THREE_REG message468, srlv, $a7, $t1, $t3, 0, 4, test_words, test_shifts
660    THREE_REG message469, srlv, $s7, $s3, $a5, 4, 20, test_words, test_shifts
661    THREE_REG message470, srlv, $a5, $s1, $a1, 24, 4, test_words, test_shifts
662    THREE_REG message471, srlv, $a4, $a1, $s7, 24, 8, test_words, test_shifts
663    THREE_REG message472, srlv, $a5, $a3, $s4, 24, 12, test_words, test_shifts
664    THREE_REG message473, srlv, $s3, $t0, $a3, 16, 24, test_words, test_shifts
665    THREE_REG message474, srlv, $t3, $s7, $t0, 28, 28, test_words, test_shifts
666    THREE_REG message475, srlv, $a1, $a6, $a2, 28, 16, test_words, test_shifts
667    THREE_REG message476, srlv, $t3, $t0, $s1, 0, 8, test_words, test_shifts
668    THREE_REG message477, srlv, $s2, $t0, $s3, 24, 24, test_words, test_shifts
669    THREE_REG message478, srlv, $s2, $s7, $s6, 24, 20, test_words, test_shifts
670    THREE_REG message479, srlv, $s1, $s5, $t2, 0, 4, test_words, test_shifts
671    THREE_REG message480, srlv, $t0, $a4, $s0, 0, 28, test_words, test_shifts
673 # andi[32]
674    TWO_REG_1_IMM message481, andi[32], $t3, $a6, 4, test_words, 45
675    TWO_REG_1_IMM message482, andi[32], $a5, $a1, 0, test_words, 1133
676    TWO_REG_1_IMM message483, andi[32], $a2, $a4, 28, test_words, 2489
677    TWO_REG_1_IMM message484, andi[32], $s5, $a7, 28, test_words, 1327
678    TWO_REG_1_IMM message485, andi[32], $t1, $t2, 20, test_words, 2223
679    TWO_REG_1_IMM message486, andi[32], $a0, $s3, 20, test_words, 254
680    TWO_REG_1_IMM message487, andi[32], $s7, $t2, 24, test_words, 591
681    TWO_REG_1_IMM message488, andi[32], $t3, $s3, 24, test_words, 2590
682    TWO_REG_1_IMM message489, andi[32], $t1, $s0, 16, test_words, 1498
683    TWO_REG_1_IMM message490, andi[32], $s1, $s0, 28, test_words, 3900
684    TWO_REG_1_IMM message491, andi[32], $a5, $t2, 20, test_words, 3646
685    TWO_REG_1_IMM message492, andi[32], $t1, $s4, 20, test_words, 2454
686    TWO_REG_1_IMM message493, andi[32], $a2, $a3, 24, test_words, 3134
687    TWO_REG_1_IMM message494, andi[32], $a6, $a3, 16, test_words, 393
688    TWO_REG_1_IMM message495, andi[32], $a1, $a3, 4, test_words, 3832
689    TWO_REG_1_IMM message496, andi[32], $s6, $a7, 28, test_words, 787
690    TWO_REG_1_IMM message497, andi[32], $s7, $t3, 20, test_words, 2541
691    TWO_REG_1_IMM message498, andi[32], $a7, $s4, 4, test_words, 36
692    TWO_REG_1_IMM message499, andi[32], $s2, $a2, 8, test_words, 2432
693    TWO_REG_1_IMM message500, andi[32], $a6, $a0, 24, test_words, 1532
694    TWO_REG_1_IMM message501, andi[32], $a3, $s4, 12, test_words, 1413
695    TWO_REG_1_IMM message502, andi[32], $s7, $t3, 24, test_words, 2169
696    TWO_REG_1_IMM message503, andi[32], $a2, $s7, 4, test_words, 260
697    TWO_REG_1_IMM message504, andi[32], $s7, $a4, 28, test_words, 3694
698    TWO_REG_1_IMM message505, andi[32], $a3, $t0, 12, test_words, 3019
699    TWO_REG_1_IMM message506, andi[32], $s0, $s4, 28, test_words, 1739
700    TWO_REG_1_IMM message507, andi[32], $s6, $s6, 12, test_words, 1092
701    TWO_REG_1_IMM message508, andi[32], $s6, $a5, 4, test_words, 2781
702    TWO_REG_1_IMM message509, andi[32], $t2, $t0, 8, test_words, 2309
703    TWO_REG_1_IMM message510, andi[32], $s7, $a4, 24, test_words, 3094
705 # andi[16]
706    TWO_REG_1_IMM message511, andi[16], $a0, $a0, 8, test_words, 7
707    TWO_REG_1_IMM message512, andi[16], $a0, $a2, 20, test_words, 4
708    TWO_REG_1_IMM message513, andi[16], $s2, $a1, 28, test_words, 15
709    TWO_REG_1_IMM message514, andi[16], $s1, $s2, 8, test_words, 8
710    TWO_REG_1_IMM message515, andi[16], $a0, $s1, 16, test_words, 2
711    TWO_REG_1_IMM message516, andi[16], $s2, $s1, 28, test_words, 4
712    TWO_REG_1_IMM message517, andi[16], $a1, $a1, 8, test_words, 65535
713    TWO_REG_1_IMM message518, andi[16], $a2, $a0, 12, test_words, 10
714    TWO_REG_1_IMM message519, andi[16], $a0, $s1, 4, test_words, 1
715    TWO_REG_1_IMM message520, andi[16], $s3, $s2, 20, test_words, 6
716    TWO_REG_1_IMM message521, andi[16], $s3, $s0, 20, test_words, 65535
717    TWO_REG_1_IMM message522, andi[16], $a2, $s3, 20, test_words, 3
718    TWO_REG_1_IMM message523, andi[16], $s0, $a1, 20, test_words, 10
719    TWO_REG_1_IMM message524, andi[16], $s3, $s1, 28, test_words, 8
720    TWO_REG_1_IMM message525, andi[16], $s2, $a1, 20, test_words, 8
721    TWO_REG_1_IMM message526, andi[16], $a1, $a0, 8, test_words, 10
722    TWO_REG_1_IMM message527, andi[16], $s2, $a3, 12, test_words, 5
723    TWO_REG_1_IMM message528, andi[16], $a2, $a0, 12, test_words, 1
724    TWO_REG_1_IMM message529, andi[16], $s0, $a0, 24, test_words, 6
725    TWO_REG_1_IMM message530, andi[16], $s3, $a3, 4, test_words, 3
726    TWO_REG_1_IMM message531, andi[16], $s1, $s3, 24, test_words, 4
727    TWO_REG_1_IMM message532, andi[16], $s0, $s1, 16, test_words, 10
728    TWO_REG_1_IMM message533, andi[16], $s2, $a2, 12, test_words, 7
729    TWO_REG_1_IMM message534, andi[16], $a2, $s1, 4, test_words, 0
730    TWO_REG_1_IMM message535, andi[16], $a1, $s0, 24, test_words, 3
731    TWO_REG_1_IMM message536, andi[16], $s0, $a1, 16, test_words, 0
732    TWO_REG_1_IMM message537, andi[16], $a2, $a3, 28, test_words, 1
733    TWO_REG_1_IMM message538, andi[16], $s2, $a0, 20, test_words, 11
734    TWO_REG_1_IMM message539, andi[16], $s3, $a3, 28, test_words, 3
735    TWO_REG_1_IMM message540, andi[16], $a0, $s0, 24, test_words, 6
737 # ori
738    TWO_REG_1_IMM message541, ori, $a6, $a1, 20, test_words, 1320
739    TWO_REG_1_IMM message542, ori, $a2, $s3, 4, test_words, 1295
740    TWO_REG_1_IMM message543, ori, $s3, $s3, 8, test_words, 3112
741    TWO_REG_1_IMM message544, ori, $s4, $t3, 0, test_words, 658
742    TWO_REG_1_IMM message545, ori, $s2, $s7, 16, test_words, 1024
743    TWO_REG_1_IMM message546, ori, $a0, $s1, 16, test_words, 943
744    TWO_REG_1_IMM message547, ori, $a4, $a7, 12, test_words, 3004
745    TWO_REG_1_IMM message548, ori, $s3, $a5, 8, test_words, 2213
746    TWO_REG_1_IMM message549, ori, $a6, $t3, 24, test_words, 3480
747    TWO_REG_1_IMM message550, ori, $a2, $s3, 0, test_words, 3354
748    TWO_REG_1_IMM message551, ori, $s6, $s6, 8, test_words, 1430
749    TWO_REG_1_IMM message552, ori, $s5, $a6, 4, test_words, 3179
750    TWO_REG_1_IMM message553, ori, $s6, $a1, 16, test_words, 2250
751    TWO_REG_1_IMM message554, ori, $s2, $a0, 4, test_words, 2
752    TWO_REG_1_IMM message555, ori, $a7, $a0, 24, test_words, 331
753    TWO_REG_1_IMM message556, ori, $a5, $s4, 0, test_words, 303
754    TWO_REG_1_IMM message557, ori, $s3, $a2, 0, test_words, 2126
755    TWO_REG_1_IMM message558, ori, $a5, $s4, 0, test_words, 859
756    TWO_REG_1_IMM message559, ori, $a6, $a6, 8, test_words, 2076
757    TWO_REG_1_IMM message560, ori, $a4, $t3, 28, test_words, 3182
758    TWO_REG_1_IMM message561, ori, $a0, $t3, 0, test_words, 1870
759    TWO_REG_1_IMM message562, ori, $s3, $a6, 0, test_words, 1359
760    TWO_REG_1_IMM message563, ori, $a6, $a2, 8, test_words, 2940
761    TWO_REG_1_IMM message564, ori, $s6, $a2, 12, test_words, 3341
762    TWO_REG_1_IMM message565, ori, $t1, $s3, 12, test_words, 2238
763    TWO_REG_1_IMM message566, ori, $a3, $a7, 8, test_words, 654
764    TWO_REG_1_IMM message567, ori, $s5, $t0, 8, test_words, 1250
765    TWO_REG_1_IMM message568, ori, $a7, $t1, 0, test_words, 3231
766    TWO_REG_1_IMM message569, ori, $t1, $s5, 20, test_words, 2400
767    TWO_REG_1_IMM message570, ori, $t3, $a1, 28, test_words, 2537
769 # xori
770    TWO_REG_1_IMM message571, xori, $a3, $s5, 20, test_words, 3161
771    TWO_REG_1_IMM message572, xori, $t0, $s1, 24, test_words, 3613
772    TWO_REG_1_IMM message573, xori, $s4, $s2, 12, test_words, 2664
773    TWO_REG_1_IMM message574, xori, $t1, $s5, 24, test_words, 755
774    TWO_REG_1_IMM message575, xori, $a1, $s0, 20, test_words, 3624
775    TWO_REG_1_IMM message576, xori, $a5, $a1, 28, test_words, 2806
776    TWO_REG_1_IMM message577, xori, $s6, $a4, 28, test_words, 2025
777    TWO_REG_1_IMM message578, xori, $a5, $s6, 12, test_words, 2108
778    TWO_REG_1_IMM message579, xori, $s0, $a4, 20, test_words, 3620
779    TWO_REG_1_IMM message580, xori, $s5, $a4, 4, test_words, 1742
780    TWO_REG_1_IMM message581, xori, $s6, $a0, 24, test_words, 1603
781    TWO_REG_1_IMM message582, xori, $a6, $s0, 24, test_words, 3603
782    TWO_REG_1_IMM message583, xori, $t0, $s3, 16, test_words, 3229
783    TWO_REG_1_IMM message584, xori, $a5, $a3, 16, test_words, 2527
784    TWO_REG_1_IMM message585, xori, $s0, $s7, 4, test_words, 4009
785    TWO_REG_1_IMM message586, xori, $a1, $s0, 24, test_words, 1857
786    TWO_REG_1_IMM message587, xori, $s4, $s7, 20, test_words, 1054
787    TWO_REG_1_IMM message588, xori, $t3, $t2, 16, test_words, 1845
788    TWO_REG_1_IMM message589, xori, $s3, $a2, 4, test_words, 2773
789    TWO_REG_1_IMM message590, xori, $s2, $t3, 0, test_words, 26
790    TWO_REG_1_IMM message591, xori, $s3, $s0, 28, test_words, 492
791    TWO_REG_1_IMM message592, xori, $s4, $a3, 12, test_words, 480
792    TWO_REG_1_IMM message593, xori, $t2, $a4, 4, test_words, 3880
793    TWO_REG_1_IMM message594, xori, $s4, $s7, 4, test_words, 3077
794    TWO_REG_1_IMM message595, xori, $s3, $t3, 12, test_words, 98
795    TWO_REG_1_IMM message596, xori, $s1, $s3, 0, test_words, 568
796    TWO_REG_1_IMM message597, xori, $s5, $a1, 20, test_words, 383
797    TWO_REG_1_IMM message598, xori, $a0, $t2, 4, test_words, 891
798    TWO_REG_1_IMM message599, xori, $t2, $t0, 28, test_words, 1858
799    TWO_REG_1_IMM message600, xori, $a0, $t3, 8, test_words, 722
801 # rotr
802    TWO_REG_1_IMM message601, rotr, $s7, $a4, 8, test_words, 24
803    TWO_REG_1_IMM message602, rotr, $s3, $a4, 20, test_words, 6
804    TWO_REG_1_IMM message603, rotr, $s7, $s4, 4, test_words, 8
805    TWO_REG_1_IMM message604, rotr, $s7, $t1, 4, test_words, 0
806    TWO_REG_1_IMM message605, rotr, $t2, $t2, 28, test_words, 18
807    TWO_REG_1_IMM message606, rotr, $s0, $a0, 24, test_words, 31
808    TWO_REG_1_IMM message607, rotr, $t0, $t1, 4, test_words, 4
809    TWO_REG_1_IMM message608, rotr, $s0, $s0, 28, test_words, 16
810    TWO_REG_1_IMM message609, rotr, $a4, $a1, 0, test_words, 11
811    TWO_REG_1_IMM message610, rotr, $a5, $a1, 8, test_words, 8
812    TWO_REG_1_IMM message611, rotr, $s5, $a7, 4, test_words, 20
813    TWO_REG_1_IMM message612, rotr, $a4, $a6, 16, test_words, 14
814    TWO_REG_1_IMM message613, rotr, $t0, $a7, 0, test_words, 5
815    TWO_REG_1_IMM message614, rotr, $a7, $s2, 16, test_words, 19
816    TWO_REG_1_IMM message615, rotr, $s0, $t1, 0, test_words, 12
817    TWO_REG_1_IMM message616, rotr, $t1, $a3, 16, test_words, 25
818    TWO_REG_1_IMM message617, rotr, $a4, $a4, 20, test_words, 22
819    TWO_REG_1_IMM message618, rotr, $a5, $s3, 24, test_words, 14
820    TWO_REG_1_IMM message619, rotr, $t2, $t3, 8, test_words, 14
821    TWO_REG_1_IMM message620, rotr, $a5, $a2, 16, test_words, 2
822    TWO_REG_1_IMM message621, rotr, $s1, $t0, 28, test_words, 20
823    TWO_REG_1_IMM message622, rotr, $a7, $s7, 0, test_words, 15
824    TWO_REG_1_IMM message623, rotr, $a4, $t0, 12, test_words, 26
825    TWO_REG_1_IMM message624, rotr, $s3, $s0, 12, test_words, 15
826    TWO_REG_1_IMM message625, rotr, $a4, $s0, 20, test_words, 6
827    TWO_REG_1_IMM message626, rotr, $t3, $a0, 16, test_words, 1
828    TWO_REG_1_IMM message627, rotr, $t3, $a7, 28, test_words, 21
829    TWO_REG_1_IMM message628, rotr, $s1, $s7, 28, test_words, 23
830    TWO_REG_1_IMM message629, rotr, $s4, $s2, 12, test_words, 19
831    TWO_REG_1_IMM message630, rotr, $a5, $a3, 8, test_words, 25
833 # sll
834    TWO_REG_1_IMM message631, sll, $s3, $t1, 12, test_words, 2
835    TWO_REG_1_IMM message632, sll, $t1, $a3, 8, test_words, 18
836    TWO_REG_1_IMM message633, sll, $s3, $a7, 0, test_words, 15
837    TWO_REG_1_IMM message634, sll, $a7, $a0, 0, test_words, 15
838    TWO_REG_1_IMM message635, sll, $t3, $a0, 16, test_words, 17
839    TWO_REG_1_IMM message636, sll, $s7, $a7, 0, test_words, 19
840    TWO_REG_1_IMM message637, sll, $s1, $s3, 24, test_words, 2
841    TWO_REG_1_IMM message638, sll, $a7, $a4, 12, test_words, 26
842    TWO_REG_1_IMM message639, sll, $a2, $a3, 20, test_words, 27
843    TWO_REG_1_IMM message640, sll, $a6, $s3, 20, test_words, 21
844    TWO_REG_1_IMM message641, sll, $t2, $a1, 16, test_words, 2
845    TWO_REG_1_IMM message642, sll, $s6, $t1, 4, test_words, 21
846    TWO_REG_1_IMM message643, sll, $t1, $t1, 24, test_words, 0
847    TWO_REG_1_IMM message644, sll, $t0, $a6, 16, test_words, 9
848    TWO_REG_1_IMM message645, sll, $s2, $t2, 12, test_words, 9
849    TWO_REG_1_IMM message646, sll, $a3, $s2, 12, test_words, 9
850    TWO_REG_1_IMM message647, sll, $s5, $t0, 16, test_words, 11
851    TWO_REG_1_IMM message648, sll, $t3, $a2, 4, test_words, 22
852    TWO_REG_1_IMM message649, sll, $a3, $a5, 0, test_words, 9
853    TWO_REG_1_IMM message650, sll, $a2, $t1, 28, test_words, 15
854    TWO_REG_1_IMM message651, sll, $a6, $a5, 0, test_words, 14
855    TWO_REG_1_IMM message652, sll, $a4, $s4, 28, test_words, 22
856    TWO_REG_1_IMM message653, sll, $s2, $a2, 28, test_words, 1
857    TWO_REG_1_IMM message654, sll, $s4, $t2, 8, test_words, 30
858    TWO_REG_1_IMM message655, sll, $a7, $t3, 4, test_words, 18
859    TWO_REG_1_IMM message656, sll, $a1, $a2, 0, test_words, 24
860    TWO_REG_1_IMM message657, sll, $a0, $a4, 8, test_words, 10
861    TWO_REG_1_IMM message658, sll, $s5, $t1, 8, test_words, 7
862    TWO_REG_1_IMM message659, sll, $s6, $a2, 20, test_words, 26
863    TWO_REG_1_IMM message660, sll, $a6, $s4, 0, test_words, 12
865 # sra
866    TWO_REG_1_IMM message661, sra, $s6, $a7, 24, test_words, 23
867    TWO_REG_1_IMM message662, sra, $t2, $a4, 20, test_words, 21
868    TWO_REG_1_IMM message663, sra, $a3, $a6, 28, test_words, 8
869    TWO_REG_1_IMM message664, sra, $a1, $a0, 4, test_words, 25
870    TWO_REG_1_IMM message665, sra, $t0, $a7, 12, test_words, 26
871    TWO_REG_1_IMM message666, sra, $t0, $s5, 4, test_words, 10
872    TWO_REG_1_IMM message667, sra, $a7, $s7, 20, test_words, 21
873    TWO_REG_1_IMM message668, sra, $t3, $a5, 8, test_words, 18
874    TWO_REG_1_IMM message669, sra, $s5, $a4, 4, test_words, 23
875    TWO_REG_1_IMM message670, sra, $a0, $s2, 16, test_words, 16
876    TWO_REG_1_IMM message671, sra, $s0, $a3, 0, test_words, 5
877    TWO_REG_1_IMM message672, sra, $s7, $t1, 24, test_words, 20
878    TWO_REG_1_IMM message673, sra, $t0, $a2, 24, test_words, 0
879    TWO_REG_1_IMM message674, sra, $s7, $s7, 12, test_words, 7
880    TWO_REG_1_IMM message675, sra, $a2, $a4, 16, test_words, 10
881    TWO_REG_1_IMM message676, sra, $s1, $s2, 16, test_words, 10
882    TWO_REG_1_IMM message677, sra, $a6, $s5, 4, test_words, 23
883    TWO_REG_1_IMM message678, sra, $s7, $a5, 28, test_words, 31
884    TWO_REG_1_IMM message679, sra, $a1, $t3, 20, test_words, 4
885    TWO_REG_1_IMM message680, sra, $s1, $s3, 0, test_words, 21
886    TWO_REG_1_IMM message681, sra, $s5, $s6, 24, test_words, 5
887    TWO_REG_1_IMM message682, sra, $a2, $s5, 16, test_words, 28
888    TWO_REG_1_IMM message683, sra, $t1, $a4, 24, test_words, 22
889    TWO_REG_1_IMM message684, sra, $s7, $t2, 4, test_words, 21
890    TWO_REG_1_IMM message685, sra, $s3, $t2, 16, test_words, 10
891    TWO_REG_1_IMM message686, sra, $t0, $a7, 8, test_words, 17
892    TWO_REG_1_IMM message687, sra, $a7, $t3, 20, test_words, 12
893    TWO_REG_1_IMM message688, sra, $s2, $s6, 4, test_words, 24
894    TWO_REG_1_IMM message689, sra, $s0, $a3, 20, test_words, 10
895    TWO_REG_1_IMM message690, sra, $t0, $a1, 28, test_words, 9
897 # srl
898    TWO_REG_1_IMM message691, srl, $t1, $t1, 0, test_words, 24
899    TWO_REG_1_IMM message692, srl, $t0, $a5, 24, test_words, 23
900    TWO_REG_1_IMM message693, srl, $s7, $t2, 8, test_words, 19
901    TWO_REG_1_IMM message694, srl, $a6, $s0, 16, test_words, 1
902    TWO_REG_1_IMM message695, srl, $a7, $a6, 20, test_words, 13
903    TWO_REG_1_IMM message696, srl, $s4, $s6, 20, test_words, 28
904    TWO_REG_1_IMM message697, srl, $t2, $s6, 28, test_words, 30
905    TWO_REG_1_IMM message698, srl, $s7, $a2, 0, test_words, 29
906    TWO_REG_1_IMM message699, srl, $t3, $t0, 20, test_words, 11
907    TWO_REG_1_IMM message700, srl, $a1, $a3, 12, test_words, 12
908    TWO_REG_1_IMM message701, srl, $a2, $s5, 0, test_words, 12
909    TWO_REG_1_IMM message702, srl, $a1, $a4, 20, test_words, 12
910    TWO_REG_1_IMM message703, srl, $a2, $a6, 4, test_words, 6
911    TWO_REG_1_IMM message704, srl, $s4, $t3, 12, test_words, 14
912    TWO_REG_1_IMM message705, srl, $s5, $a2, 20, test_words, 13
913    TWO_REG_1_IMM message706, srl, $a4, $a1, 8, test_words, 19
914    TWO_REG_1_IMM message707, srl, $t1, $a3, 28, test_words, 6
915    TWO_REG_1_IMM message708, srl, $t3, $s2, 8, test_words, 1
916    TWO_REG_1_IMM message709, srl, $s7, $a2, 20, test_words, 24
917    TWO_REG_1_IMM message710, srl, $a7, $t2, 16, test_words, 21
918    TWO_REG_1_IMM message711, srl, $a4, $s1, 16, test_words, 28
919    TWO_REG_1_IMM message712, srl, $a0, $a3, 12, test_words, 30
920    TWO_REG_1_IMM message713, srl, $t1, $s0, 12, test_words, 1
921    TWO_REG_1_IMM message714, srl, $s1, $a1, 16, test_words, 10
922    TWO_REG_1_IMM message715, srl, $t0, $a3, 0, test_words, 23
923    TWO_REG_1_IMM message716, srl, $a5, $t2, 0, test_words, 28
924    TWO_REG_1_IMM message717, srl, $a1, $s5, 16, test_words, 12
925    TWO_REG_1_IMM message718, srl, $a3, $t0, 4, test_words, 19
926    TWO_REG_1_IMM message719, srl, $t2, $s1, 0, test_words, 18
927    TWO_REG_1_IMM message720, srl, $a4, $a7, 0, test_words, 5
929 # ext
930    TWO_REG_2_IMM message721, ext, $a7, $t3, 24, test_words, 0, 17
931    TWO_REG_2_IMM message722, ext, $a3, $a6, 20, test_words, 14, 1
932    TWO_REG_2_IMM message723, ext, $t0, $a4, 16, test_words, 21, 9
933    TWO_REG_2_IMM message724, ext, $a5, $a2, 20, test_words, 29, 2
934    TWO_REG_2_IMM message725, ext, $s5, $s3, 20, test_words, 3, 28
935    TWO_REG_2_IMM message726, ext, $s5, $s6, 4, test_words, 24, 7
936    TWO_REG_2_IMM message727, ext, $t2, $t3, 8, test_words, 5, 7
937    TWO_REG_2_IMM message728, ext, $s2, $s0, 20, test_words, 23, 2
938    TWO_REG_2_IMM message729, ext, $s3, $t0, 8, test_words, 12, 6
939    TWO_REG_2_IMM message730, ext, $t3, $s5, 12, test_words, 8, 12
940    TWO_REG_2_IMM message731, ext, $s5, $a1, 8, test_words, 11, 9
941    TWO_REG_2_IMM message732, ext, $s6, $a4, 28, test_words, 15, 10
942    TWO_REG_2_IMM message733, ext, $s1, $s2, 16, test_words, 23, 6
943    TWO_REG_2_IMM message734, ext, $t0, $s2, 12, test_words, 13, 4
944    TWO_REG_2_IMM message735, ext, $a1, $a5, 20, test_words, 20, 2
945    TWO_REG_2_IMM message736, ext, $a2, $a7, 24, test_words, 2, 24
946    TWO_REG_2_IMM message737, ext, $t1, $s7, 16, test_words, 27, 2
947    TWO_REG_2_IMM message738, ext, $a1, $a6, 12, test_words, 12, 10
948    TWO_REG_2_IMM message739, ext, $s0, $a2, 28, test_words, 0, 26
949    TWO_REG_2_IMM message740, ext, $s6, $s4, 12, test_words, 21, 11
950    TWO_REG_2_IMM message741, ext, $s5, $a3, 12, test_words, 26, 6
951    TWO_REG_2_IMM message742, ext, $s4, $t1, 8, test_words, 18, 8
952    TWO_REG_2_IMM message743, ext, $a1, $s0, 8, test_words, 5, 26
953    TWO_REG_2_IMM message744, ext, $a1, $t3, 4, test_words, 24, 8
954    TWO_REG_2_IMM message745, ext, $t3, $s4, 4, test_words, 18, 1
955    TWO_REG_2_IMM message746, ext, $t3, $a5, 20, test_words, 14, 3
956    TWO_REG_2_IMM message747, ext, $a7, $a7, 4, test_words, 14, 7
957    TWO_REG_2_IMM message748, ext, $s0, $s2, 28, test_words, 30, 1
958    TWO_REG_2_IMM message749, ext, $a6, $s7, 0, test_words, 28, 2
959    TWO_REG_2_IMM message750, ext, $a0, $s5, 0, test_words, 17, 13
961 # ins
962    TWO_REG_2_IMM_B message751, ins, $a7, $s0, 20, 4, test_words, test_words, 7, 1
963    TWO_REG_2_IMM_B message752, ins, $t0, $a4, 28, 8, test_words, test_words, 6, 17
964    TWO_REG_2_IMM_B message753, ins, $t2, $a0, 0, 16, test_words, test_words, 20, 11
965    TWO_REG_2_IMM_B message754, ins, $t3, $s7, 24, 20, test_words, test_words, 18, 8
966    TWO_REG_2_IMM_B message755, ins, $s1, $a7, 28, 12, test_words, test_words, 31, 1
967    TWO_REG_2_IMM_B message756, ins, $s4, $s3, 20, 8, test_words, test_words, 0, 21
968    TWO_REG_2_IMM_B message757, ins, $t0, $a4, 0, 12, test_words, test_words, 22, 9
969    TWO_REG_2_IMM_B message758, ins, $s1, $a4, 24, 20, test_words, test_words, 16, 4
970    TWO_REG_2_IMM_B message759, ins, $s7, $a7, 24, 20, test_words, test_words, 8, 1
971    TWO_REG_2_IMM_B message760, ins, $a0, $a6, 0, 12, test_words, test_words, 29, 1
972    TWO_REG_2_IMM_B message761, ins, $t0, $a5, 24, 4, test_words, test_words, 11, 1
973    TWO_REG_2_IMM_B message762, ins, $a5, $a7, 8, 20, test_words, test_words, 26, 4
974    TWO_REG_2_IMM_B message763, ins, $a3, $a7, 20, 8, test_words, test_words, 20, 7
975    TWO_REG_2_IMM_B message764, ins, $s5, $t3, 4, 12, test_words, test_words, 9, 6
976    TWO_REG_2_IMM_B message765, ins, $s3, $a5, 16, 12, test_words, test_words, 9, 10
977    TWO_REG_2_IMM_B message766, ins, $s3, $a1, 8, 4, test_words, test_words, 14, 13
978    TWO_REG_2_IMM_B message767, ins, $s0, $t3, 20, 8, test_words, test_words, 24, 1
979    TWO_REG_2_IMM_B message768, ins, $t3, $t3, 28, 4, test_words, test_words, 29, 1
980    TWO_REG_2_IMM_B message769, ins, $t3, $s2, 28, 0, test_words, test_words, 13, 7
981    TWO_REG_2_IMM_B message770, ins, $a6, $s5, 24, 24, test_words, test_words, 4, 28
982    TWO_REG_2_IMM_B message771, ins, $a7, $s7, 16, 8, test_words, test_words, 17, 5
983    TWO_REG_2_IMM_B message772, ins, $a0, $a1, 20, 20, test_words, test_words, 11, 7
984    TWO_REG_2_IMM_B message773, ins, $s1, $a7, 0, 20, test_words, test_words, 0, 31
985    TWO_REG_2_IMM_B message774, ins, $s1, $a7, 0, 0, test_words, test_words, 23, 3
986    TWO_REG_2_IMM_B message775, ins, $a1, $s2, 28, 28, test_words, test_words, 0, 4
987    TWO_REG_2_IMM_B message776, ins, $a6, $t0, 12, 8, test_words, test_words, 18, 7
988    TWO_REG_2_IMM_B message777, ins, $a4, $a6, 20, 4, test_words, test_words, 23, 1
989    TWO_REG_2_IMM_B message778, ins, $a2, $s1, 28, 24, test_words, test_words, 18, 4
990    TWO_REG_2_IMM_B message779, ins, $a4, $a7, 24, 20, test_words, test_words, 11, 3
991    TWO_REG_2_IMM_B message780, ins, $a7, $s4, 0, 8, test_words, test_words, 3, 17
992    TWO_REG_2_IMM_B message781, ins, $a5, $a5, 0, 0, test_words, test_words, 19, 8
993    TWO_REG_2_IMM_B message782, ins, $s4, $t3, 16, 4, test_words, test_words, 8, 5
994    TWO_REG_2_IMM_B message783, ins, $s6, $s6, 4, 4, test_words, test_words, 21, 10
995    TWO_REG_2_IMM_B message784, ins, $a1, $a5, 24, 28, test_words, test_words, 14, 8
996    TWO_REG_2_IMM_B message785, ins, $t1, $a1, 24, 20, test_words, test_words, 19, 8
997    TWO_REG_2_IMM_B message786, ins, $s2, $s5, 12, 24, test_words, test_words, 25, 4
998    TWO_REG_2_IMM_B message787, ins, $s1, $s2, 24, 20, test_words, test_words, 15, 2
999    TWO_REG_2_IMM_B message788, ins, $t1, $a1, 20, 8, test_words, test_words, 19, 10
1000    TWO_REG_2_IMM_B message789, ins, $t1, $t0, 12, 12, test_words, test_words, 11, 15
1001    TWO_REG_2_IMM_B message790, ins, $a1, $s5, 12, 12, test_words, test_words, 14, 16
1003 # extw
1004    THREE_REG_1_IMM message791, extw, $s4, $a4, $s4, 28, 12, test_words, test_words, 25
1005    THREE_REG_1_IMM message792, extw, $a6, $s4, $s3, 16, 4, test_words, test_words, 15
1006    THREE_REG_1_IMM message793, extw, $t2, $s3, $a0, 28, 20, test_words, test_words, 3
1007    THREE_REG_1_IMM message794, extw, $a5, $a3, $a3, 20, 24, test_words, test_words, 19
1008    THREE_REG_1_IMM message795, extw, $s3, $s7, $a4, 8, 24, test_words, test_words, 2
1009    THREE_REG_1_IMM message796, extw, $s5, $a7, $s7, 4, 8, test_words, test_words, 2
1010    THREE_REG_1_IMM message797, extw, $a7, $a0, $s2, 8, 16, test_words, test_words, 31
1011    THREE_REG_1_IMM message798, extw, $s1, $s7, $s6, 8, 24, test_words, test_words, 8
1012    THREE_REG_1_IMM message799, extw, $s1, $s0, $s7, 20, 20, test_words, test_words, 25
1013    THREE_REG_1_IMM message800, extw, $a4, $a4, $a5, 16, 24, test_words, test_words, 3
1014    THREE_REG_1_IMM message801, extw, $t2, $s4, $a6, 20, 4, test_words, test_words, 17
1015    THREE_REG_1_IMM message802, extw, $s3, $t0, $a1, 20, 28, test_words, test_words, 14
1016    THREE_REG_1_IMM message803, extw, $s1, $t0, $t1, 28, 8, test_words, test_words, 19
1017    THREE_REG_1_IMM message804, extw, $s7, $a0, $t3, 8, 20, test_words, test_words, 8
1018    THREE_REG_1_IMM message805, extw, $a0, $a1, $t0, 4, 4, test_words, test_words, 11
1019    THREE_REG_1_IMM message806, extw, $a4, $s3, $a7, 12, 20, test_words, test_words, 12
1020    THREE_REG_1_IMM message807, extw, $a4, $a0, $s5, 20, 8, test_words, test_words, 0
1021    THREE_REG_1_IMM message808, extw, $a7, $s7, $s0, 0, 24, test_words, test_words, 27
1022    THREE_REG_1_IMM message809, extw, $t0, $a6, $t3, 28, 0, test_words, test_words, 16
1023    THREE_REG_1_IMM message810, extw, $a0, $s0, $t1, 16, 20, test_words, test_words, 6
1024    THREE_REG_1_IMM message811, extw, $a3, $s2, $a1, 8, 20, test_words, test_words, 10
1025    THREE_REG_1_IMM message812, extw, $a7, $s1, $a3, 0, 24, test_words, test_words, 17
1026    THREE_REG_1_IMM message813, extw, $a4, $a6, $t0, 0, 8, test_words, test_words, 14
1027    THREE_REG_1_IMM message814, extw, $a3, $s2, $s4, 24, 24, test_words, test_words, 29
1028    THREE_REG_1_IMM message815, extw, $s2, $s2, $s1, 12, 8, test_words, test_words, 15
1029    THREE_REG_1_IMM message816, extw, $s1, $a2, $a5, 28, 16, test_words, test_words, 30
1030    THREE_REG_1_IMM message817, extw, $s5, $s3, $t3, 0, 12, test_words, test_words, 13
1031    THREE_REG_1_IMM message818, extw, $t1, $t3, $s7, 4, 16, test_words, test_words, 10
1032    THREE_REG_1_IMM message819, extw, $a0, $t3, $s0, 16, 24, test_words, test_words, 14
1033    THREE_REG_1_IMM message820, extw, $a5, $t0, $s0, 12, 0, test_words, test_words, 23
1034    THREE_REG_1_IMM message821, extw, $a2, $t1, $s1, 12, 0, test_words, test_words, 29
1035    THREE_REG_1_IMM message822, extw, $s1, $a6, $a5, 0, 8, test_words, test_words, 28
1036    THREE_REG_1_IMM message823, extw, $s1, $a4, $a0, 20, 20, test_words, test_words, 28
1037    THREE_REG_1_IMM message824, extw, $s7, $s1, $a7, 28, 8, test_words, test_words, 1
1038    THREE_REG_1_IMM message825, extw, $s6, $s3, $a2, 8, 24, test_words, test_words, 22
1039    THREE_REG_1_IMM message826, extw, $a1, $s4, $a7, 8, 12, test_words, test_words, 0
1040    THREE_REG_1_IMM message827, extw, $t0, $s4, $s6, 4, 16, test_words, test_words, 12
1041    THREE_REG_1_IMM message828, extw, $s5, $s6, $a4, 20, 28, test_words, test_words, 22
1042    THREE_REG_1_IMM message829, extw, $s5, $t2, $a3, 20, 20, test_words, test_words, 29
1043    THREE_REG_1_IMM message830, extw, $a6, $t3, $s5, 16, 24, test_words, test_words, 7
1045    move $a0, $zero
1046    restore 16, $ra
1047    jrc   $ra
1048    .set  macro
1049    .set  reorder
1050    .end  main
1051    .size main, .-main