1 // Copyright 2015 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
5 // This contains the majority of valid opcode combinations
6 // available in cmd/internal/obj/ppc64/asm9.go with
7 // their valid instruction encodings.
9 #include "../../../../../runtime/textflag.h"
11 // In case of index mode instructions, usage of
12 // (Rx)(R0) is equivalent to (Rx+R0)
13 // In case of base+displacement mode instructions if
14 // the offset is 0, usage of (Rx) is equivalent to 0(Rx)
15 TEXT asmtest(SB),DUPOK|NOSPLIT,$0
17 MOVD $1, R3 // 38600001
18 MOVD $-1, R4 // 3880ffff
19 MOVD $65535, R5 // 6005ffff
20 MOVD $65536, R6 // 64060001
21 MOVD $-32767, R5 // 38a08001
22 MOVD $-32768, R6 // 38c08000
23 MOVD $1234567, R5 // 6405001260a5d687 or 0600001238a0d687
24 MOVW $1, R3 // 38600001
25 MOVW $-1, R4 // 3880ffff
26 MOVW $65535, R5 // 6005ffff
27 MOVW $65536, R6 // 64060001
28 MOVW $-32767, R5 // 38a08001
29 MOVW $-32768, R6 // 38c08000
30 MOVW $1234567, R5 // 6405001260a5d687 or 0600001238a0d687
31 // Hex constant 0x80000001
32 MOVW $2147483649, R5 // 6405800060a50001 or 0600800038a00001
33 MOVD $2147483649, R5 // 6405800060a50001 or 0600800038a00001
34 // Hex constant 0xFFFFFFFF80000001
35 MOVD $-2147483647, R5 // 3ca0800060a50001 or 0603800038a00001
36 // Hex constant 0xFFFFFFFE00000002 (load of constant on < power10, pli on >= power10
37 MOVD $-8589934590, R5 // 3ca00000e8a50000 or 0602000038a00002
39 // TODO: These are preprocessed by the assembler into MOVD $const>>shift, R5; SLD $shift, R5.
40 // This only captures the MOVD. Should the SLD be appended to the encoding by the test?
41 // Hex constant 0x20004000000
42 MOVD $2199090364416, R5 // 60058001
43 // Hex constant 0xFFFFFE0004000000
44 MOVD $-2198956146688, R5 // 38a08001
45 // TODO: On GOPPC64={power8,power9}, this is preprocessed into MOVD $-1, R5; RLDC R5, $33, $63, R5.
46 // This only captures the MOVD. Should the RLDC be appended to the encoding by the test?
47 // Hex constant 0xFFFFFFFE00000001
48 MOVD $-8589934591, R5 // 38a0ffff or 0602000038a00001
50 MOVD 8(R3), R4 // e8830008
51 MOVD (R3)(R4), R5 // 7ca4182a
52 MOVD (R3)(R0), R5 // 7ca0182a
53 MOVD (R3), R5 // e8a30000
54 MOVW 4(R3), R4 // e8830006
55 MOVW (R3)(R4), R5 // 7ca41aaa
56 MOVW (R3)(R0), R5 // 7ca01aaa
57 MOVW (R3), R5 // e8a30002
58 MOVWZ 4(R3), R4 // 80830004
59 MOVWZ (R3)(R4), R5 // 7ca4182e
60 MOVWZ (R3)(R0), R5 // 7ca0182e
61 MOVWZ (R3), R5 // 80a30000
62 MOVH 4(R3), R4 // a8830004
63 MOVH (R3)(R4), R5 // 7ca41aae
64 MOVH (R3)(R0), R5 // 7ca01aae
65 MOVH (R3), R5 // a8a30000
67 MOVHZ 2(R3), R4 // a0830002
68 MOVHZ (R3)(R4), R5 // 7ca41a2e
69 MOVHZ (R3)(R0), R5 // 7ca01a2e
70 MOVHZ (R3), R5 // a0a30000
71 MOVB 1(R3), R4 // 888300017c840774
72 MOVB (R3)(R4), R5 // 7ca418ae7ca50774
73 MOVB (R3)(R0), R5 // 7ca018ae7ca50774
74 MOVB (R3), R5 // 88a300007ca50774
75 MOVBZ 1(R3), R4 // 88830001
76 MOVBZ (R3)(R4), R5 // 7ca418ae
77 MOVBZ (R3)(R0), R5 // 7ca018ae
78 MOVBZ (R3), R5 // 88a30000
79 MOVDBR (R3)(R4), R5 // 7ca41c28
80 MOVDBR (R3)(R0), R5 // 7ca01c28
81 MOVDBR (R3), R5 // 7ca01c28
82 MOVWBR (R3)(R4), R5 // 7ca41c2c
83 MOVWBR (R3)(R0), R5 // 7ca01c2c
84 MOVWBR (R3), R5 // 7ca01c2c
85 MOVHBR (R3)(R4), R5 // 7ca41e2c
86 MOVHBR (R3)(R0), R5 // 7ca01e2c
87 MOVHBR (R3), R5 // 7ca01e2c
88 MOVD $foo+4009806848(FP), R5 // 3ca1ef0138a5cc40 or 0600ef0038a1cc40
89 MOVD $foo(SB), R5 // 3ca0000038a50000 or 0610000038a00000
91 MOVDU 8(R3), R4 // e8830009
92 MOVDU (R3)(R4), R5 // 7ca4186a
93 MOVDU (R3)(R0), R5 // 7ca0186a
94 MOVDU (R3), R5 // e8a30001
95 MOVWU (R3)(R4), R5 // 7ca41aea
96 MOVWU (R3)(R0), R5 // 7ca01aea
97 MOVWZU 4(R3), R4 // 84830004
98 MOVWZU (R3)(R4), R5 // 7ca4186e
99 MOVWZU (R3)(R0), R5 // 7ca0186e
100 MOVWZU (R3), R5 // 84a30000
101 MOVHU 2(R3), R4 // ac830002
102 MOVHU (R3)(R4), R5 // 7ca41aee
103 MOVHU (R3)(R0), R5 // 7ca01aee
104 MOVHU (R3), R5 // aca30000
105 MOVHZU 2(R3), R4 // a4830002
106 MOVHZU (R3)(R4), R5 // 7ca41a6e
107 MOVHZU (R3)(R0), R5 // 7ca01a6e
108 MOVHZU (R3), R5 // a4a30000
109 MOVBU 1(R3), R4 // 8c8300017c840774
110 MOVBU (R3)(R4), R5 // 7ca418ee7ca50774
111 MOVBU (R3)(R0), R5 // 7ca018ee7ca50774
112 MOVBU (R3), R5 // 8ca300007ca50774
113 MOVBZU 1(R3), R4 // 8c830001
114 MOVBZU (R3)(R4), R5 // 7ca418ee
115 MOVBZU (R3)(R0), R5 // 7ca018ee
116 MOVBZU (R3), R5 // 8ca30000
118 MOVD R4, 8(R3) // f8830008
119 MOVD R5, (R3)(R4) // 7ca4192a
120 MOVD R5, (R3)(R0) // 7ca0192a
121 MOVD R5, (R3) // f8a30000
122 MOVW R4, 4(R3) // 90830004
123 MOVW R5, (R3)(R4) // 7ca4192e
124 MOVW R5, (R3)(R0) // 7ca0192e
125 MOVW R5, (R3) // 90a30000
126 MOVH R4, 2(R3) // b0830002
127 MOVH R5, (R3)(R4) // 7ca41b2e
128 MOVH R5, (R3)(R0) // 7ca01b2e
129 MOVH R5, (R3) // b0a30000
130 MOVB R4, 1(R3) // 98830001
131 MOVB R5, (R3)(R4) // 7ca419ae
132 MOVB R5, (R3)(R0) // 7ca019ae
133 MOVB R5, (R3) // 98a30000
134 MOVDBR R5, (R3)(R4) // 7ca41d28
135 MOVDBR R5, (R3)(R0) // 7ca01d28
136 MOVDBR R5, (R3) // 7ca01d28
137 MOVWBR R5, (R3)(R4) // 7ca41d2c
138 MOVWBR R5, (R3)(R0) // 7ca01d2c
139 MOVWBR R5, (R3) // 7ca01d2c
140 MOVHBR R5, (R3)(R4) // 7ca41f2c
141 MOVHBR R5, (R3)(R0) // 7ca01f2c
142 MOVHBR R5, (R3) // 7ca01f2c
144 MOVDU R4, 8(R3) // f8830009
145 MOVDU R5, (R3)(R4) // 7ca4196a
146 MOVDU R5, (R3)(R0) // 7ca0196a
147 MOVDU R5, (R3) // f8a30001
148 MOVWU R4, 4(R3) // 94830004
149 MOVWU R5, (R3)(R4) // 7ca4196e
150 MOVWU R5, (R3)(R0) // 7ca0196e
151 MOVHU R4, 2(R3) // b4830002
152 MOVHU R5, (R3)(R4) // 7ca41b6e
153 MOVHU R5, (R3)(R0) // 7ca01b6e
154 MOVHU R5, (R3) // b4a30000
155 MOVBU R4, 1(R3) // 9c830001
156 MOVBU R5, (R3)(R4) // 7ca419ee
157 MOVBU R5, (R3)(R0) // 7ca019ee
158 MOVBU R5, (R3) // 9ca30000
160 MOVB $0, R4 // 38800000
161 MOVBZ $0, R4 // 38800000
162 MOVH $0, R4 // 38800000
163 MOVHZ $0, R4 // 38800000
164 MOVW $0, R4 // 38800000
165 MOVWZ $0, R4 // 38800000
166 MOVD $0, R4 // 38800000
167 MOVD $0, R0 // 38000000
169 ADD $1, R3 // 38630001
170 ADD $1, R3, R4 // 38830001
171 ADD $-1, R4 // 3884ffff
172 ADD $-1, R4, R5 // 38a4ffff
173 ADD $65535, R5 // 601fffff7cbf2a14 or 0600000038a5ffff
174 ADD $65535, R5, R6 // 601fffff7cdf2a14 or 0600000038c5ffff
175 ADD $65536, R6 // 3cc60001
176 ADD $65536, R6, R7 // 3ce60001
177 ADD $-32767, R5 // 38a58001
178 ADD $-32767, R5, R4 // 38858001
179 ADD $-32768, R6 // 38c68000
180 ADD $-32768, R6, R5 // 38a68000
181 // Hex constant 0xFFFFFFFE00000000
182 ADD $-8589934592, R5 // 3fe0fffe63ff00007bff83e463ff00007cbf2a14 or 0602000038a50000
184 //TODO: this compiles to add r5,r6,r0. It should be addi r5,r6,0.
185 // this is OK since r0 == $0, but the latter is preferred.
186 ADD $0, R6, R5 // 7ca60214
188 ADD $1234567, R5 // 641f001263ffd6877cbf2a14 or 0600001238a5d687
189 ADD $1234567, R5, R6 // 641f001263ffd6877cdf2a14 or 0600001238c5d687
190 ADDEX R3, R5, $3, R6 // 7cc32f54
191 ADDEX R3, $3, R5, R6 // 7cc32f54
192 ADDIS $8, R3 // 3c630008
193 ADDIS $1000, R3, R4 // 3c8303e8
195 ANDCC $1, R3 // 70630001
196 ANDCC $1, R3, R4 // 70640001
197 ANDCC $-1, R4 // 3be0ffff7fe42039
198 ANDCC $-1, R4, R5 // 3be0ffff7fe52039
199 ANDCC $65535, R5 // 70a5ffff
200 ANDCC $65535, R5, R6 // 70a6ffff
201 ANDCC $65536, R6 // 74c60001
202 ANDCC $65536, R6, R7 // 74c70001
203 ANDCC $-32767, R5 // 3be080017fe52839
204 ANDCC $-32767, R5, R4 // 3be080017fe42839
205 ANDCC $-32768, R6 // 3be080007fe63039
206 ANDCC $-32768, R5, R6 // 3be080007fe62839
207 ANDCC $1234567, R5 // 641f001263ffd6877fe52839
208 ANDCC $1234567, R5, R6 // 641f001263ffd6877fe62839
209 ANDISCC $1, R3 // 74630001
210 ANDISCC $1000, R3, R4 // 746403e8
212 OR $1, R3 // 60630001
213 OR $1, R3, R4 // 60640001
214 OR $-1, R4 // 3be0ffff7fe42378
215 OR $-1, R4, R5 // 3be0ffff7fe52378
216 OR $65535, R5 // 60a5ffff
217 OR $65535, R5, R6 // 60a6ffff
218 OR $65536, R6 // 64c60001
219 OR $65536, R6, R7 // 64c70001
220 OR $-32767, R5 // 3be080017fe52b78
221 OR $-32767, R5, R6 // 3be080017fe62b78
222 OR $-32768, R6 // 3be080007fe63378
223 OR $-32768, R6, R7 // 3be080007fe73378
224 OR $1234567, R5 // 641f001263ffd6877fe52b78
225 OR $1234567, R5, R3 // 641f001263ffd6877fe32b78
228 XOR $1, R3 // 68630001
229 XOR $1, R3, R4 // 68640001
230 XOR $-1, R4 // 3be0ffff7fe42278
231 XOR $-1, R4, R5 // 3be0ffff7fe52278
232 XOR $65535, R5 // 68a5ffff
233 XOR $65535, R5, R6 // 68a6ffff
234 XOR $65536, R6 // 6cc60001
235 XOR $65536, R6, R7 // 6cc70001
236 XOR $-32767, R5 // 3be080017fe52a78
237 XOR $-32767, R5, R6 // 3be080017fe62a78
238 XOR $-32768, R6 // 3be080007fe63278
239 XOR $-32768, R6, R7 // 3be080007fe73278
240 XOR $1234567, R5 // 641f001263ffd6877fe52a78
241 XOR $1234567, R5, R3 // 641f001263ffd6877fe32a78
244 // TODO: the order of CR operands don't match
245 CMP R3, R4 // 7c232000
246 CMPU R3, R4 // 7c232040
247 CMPW R3, R4 // 7c032000
248 CMPWU R3, R4 // 7c032040
249 CMPB R3,R4,R4 // 7c6423f8
250 CMPEQB R3,R4,CR6 // 7f0321c0
252 // TODO: constants for ADDC?
253 ADD R3, R4 // 7c841a14
254 ADD R3, R4, R5 // 7ca41a14
255 ADDC R3, R4 // 7c841814
256 ADDC R3, R4, R5 // 7ca41814
257 ADDCC R3, R4, R5 // 7ca41a15
258 ADDE R3, R4 // 7c841914
259 ADDECC R3, R4 // 7c841915
260 ADDEV R3, R4 // 7c841d14
261 ADDEVCC R3, R4 // 7c841d15
262 ADDV R3, R4 // 7c841e14
263 ADDVCC R3, R4 // 7c841e15
264 ADDCCC R3, R4, R5 // 7ca41815
265 ADDME R3, R4 // 7c8301d4
266 ADDMECC R3, R4 // 7c8301d5
267 ADDMEV R3, R4 // 7c8305d4
268 ADDMEVCC R3, R4 // 7c8305d5
269 ADDCV R3, R4 // 7c841c14
270 ADDCVCC R3, R4 // 7c841c15
271 ADDZE R3, R4 // 7c830194
272 ADDZECC R3, R4 // 7c830195
273 ADDZEV R3, R4 // 7c830594
274 ADDZEVCC R3, R4 // 7c830595
275 SUBME R3, R4 // 7c8301d0
276 SUBMECC R3, R4 // 7c8301d1
277 SUBMEV R3, R4 // 7c8305d0
278 SUBZE R3, R4 // 7c830190
279 SUBZECC R3, R4 // 7c830191
280 SUBZEV R3, R4 // 7c830590
281 SUBZEVCC R3, R4 // 7c830591
283 AND R3, R4 // 7c841838
284 AND R3, R4, R5 // 7c851838
285 ANDN R3, R4, R5 // 7c851878
286 ANDCC R3, R4, R5 // 7c851839
287 ANDNCC R3, R4, R5 // 7c851879
288 OR R3, R4 // 7c841b78
289 OR R3, R4, R5 // 7c851b78
290 ORN R3, R4, R5 // 7c851b38
291 ORCC R3, R4, R5 // 7c851b79
292 ORNCC R3, R4, R5 // 7c851b39
293 XOR R3, R4 // 7c841a78
294 XOR R3, R4, R5 // 7c851a78
295 XORCC R3, R4, R5 // 7c851a79
296 NAND R3, R4, R5 // 7c851bb8
297 NANDCC R3, R4, R5 // 7c851bb9
298 EQV R3, R4, R5 // 7c851a38
299 EQVCC R3, R4, R5 // 7c851a39
300 NOR R3, R4, R5 // 7c8518f8
301 NORCC R3, R4, R5 // 7c8518f9
303 SUB R3, R4 // 7c832050
304 SUB R3, R4, R5 // 7ca32050
305 SUBC R3, R4 // 7c832010
306 SUBC R3, R4, R5 // 7ca32010
307 SUBCC R3, R4, R5 // 7ca32051
308 SUBVCC R3, R4, R5 // 7ca32451
309 SUBCCC R3, R4, R5 // 7ca32011
310 SUBCV R3, R4, R5 // 7ca32410
311 SUBCVCC R3, R4, R5 // 7ca32411
312 SUBMEVCC R3, R4 // 7c8305d1
313 SUBV R3, R4, R5 // 7ca32450
314 SUBE R3, R4, R5 // 7ca32110
315 SUBECC R3, R4, R5 // 7ca32111
316 SUBEV R3, R4, R5 // 7ca32510
317 SUBEVCC R3, R4, R5 // 7ca32511
319 MULLW R3, R4 // 7c8419d6
320 MULLW R3, R4, R5 // 7ca419d6
321 MULLW $10, R3 // 1c63000a
322 MULLW $10000000, R3 // 641f009863ff96807c7f19d6
324 MULLWCC R3, R4, R5 // 7ca419d7
325 MULHW R3, R4, R5 // 7ca41896
327 MULHWU R3, R4, R5 // 7ca41816
328 MULLD R3, R4 // 7c8419d2
329 MULLD R4, R4, R5 // 7ca421d2
330 MULLD $20, R4 // 1c840014
331 MULLD $200000000, R4 // 641f0beb63ffc2007c9f21d2
333 MULLDCC R3, R4, R5 // 7ca419d3
334 MULHD R3, R4, R5 // 7ca41892
335 MULHDCC R3, R4, R5 // 7ca41893
336 MULHDU R3, R4, R5 // 7ca41812
337 MULHDUCC R3, R4, R5 // 7ca41813
339 MULLWV R3, R4 // 7c841dd6
340 MULLWV R3, R4, R5 // 7ca41dd6
341 MULLWVCC R3, R4, R5 // 7ca41dd7
342 MULHWUCC R3, R4, R5 // 7ca41817
343 MULLDV R3, R4, R5 // 7ca41dd2
344 MULLDVCC R3, R4, R5 // 7ca41dd3
346 DIVD R3,R4 // 7c841bd2
347 DIVD R3, R4, R5 // 7ca41bd2
348 DIVW R3, R4 // 7c841bd6
349 DIVW R3, R4, R5 // 7ca41bd6
350 DIVDCC R3,R4, R5 // 7ca41bd3
351 DIVWCC R3,R4, R5 // 7ca41bd7
352 DIVDU R3, R4, R5 // 7ca41b92
353 DIVWU R3, R4, R5 // 7ca41b96
354 DIVDV R3, R4, R5 // 7ca41fd2
355 DIVWV R3, R4, R5 // 7ca41fd6
356 DIVDUCC R3, R4, R5 // 7ca41b93
357 DIVWUCC R3, R4, R5 // 7ca41b97
358 DIVDVCC R3, R4, R5 // 7ca41fd3
359 DIVWVCC R3, R4, R5 // 7ca41fd7
360 DIVDUV R3, R4, R5 // 7ca41f92
361 DIVDUVCC R3, R4, R5 // 7ca41f93
362 DIVWUVCC R3, R4, R5 // 7ca41f97
363 DIVWUV R3, R4, R5 // 7ca41f96
364 DIVDE R3, R4, R5 // 7ca41b52
365 DIVDECC R3, R4, R5 // 7ca41b53
366 DIVDEU R3, R4, R5 // 7ca41b12
367 DIVDEUCC R3, R4, R5 // 7ca41b13
369 REM R3, R4, R5 // 7fe41bd67fff19d67cbf2050
370 REMU R3, R4, R5 // 7fe41b967fff19d67bff00287cbf2050
371 REMD R3, R4, R5 // 7fe41bd27fff19d27cbf2050
372 REMDU R3, R4, R5 // 7fe41b927fff19d27cbf2050
374 MADDHD R3,R4,R5,R6 // 10c32170
375 MADDHDU R3,R4,R5,R6 // 10c32171
377 MODUD R3, R4, R5 // 7ca41a12
378 MODUW R3, R4, R5 // 7ca41a16
379 MODSD R3, R4, R5 // 7ca41e12
380 MODSW R3, R4, R5 // 7ca41e16
382 SLW $8, R3, R4 // 5464402e
383 SLW R3, R4, R5 // 7c851830
384 SLWCC R3, R4 // 7c841831
385 SLD $16, R3, R4 // 786483e4
386 SLD R3, R4, R5 // 7c851836
387 SLDCC R3, R4 // 7c841837
389 SRW $8, R3, R4 // 5464c23e
390 SRW R3, R4, R5 // 7c851c30
391 SRWCC R3, R4 // 7c841c31
392 SRAW $8, R3, R4 // 7c644670
393 SRAW R3, R4, R5 // 7c851e30
394 SRAWCC R3, R4 // 7c841e31
395 SRD $16, R3, R4 // 78648402
396 SRD R3, R4, R5 // 7c851c36
397 SRDCC R3, R4 // 7c841c37
398 SRAD $16, R3, R4 // 7c648674
399 SRAD R3, R4, R5 // 7c851e34
400 SRDCC R3, R4 // 7c841c37
401 ROTLW $16, R3, R4 // 5464803e
402 ROTLW R3, R4, R5 // 5c85183e
403 ROTL $16, R3, R4 // 78648000
404 EXTSWSLI $3, R4, R5 // 7c851ef4
405 EXTSWSLICC $16, R3, R4 // 7c6486f5
406 EXTSB R3, R4 // 7c640774
407 EXTSBCC R3, R4 // 7c640775
408 EXTSH R3, R4 // 7c640734
409 EXTSHCC R3, R4 // 7c640735
410 EXTSW R3, R4 // 7c6407b4
411 EXTSWCC R3, R4 // 7c6407b5
412 RLWMI $7, R3, $4026531855, R6 // 50663f06
413 RLWMI $7, R3, $1, R6 // 50663ffe
414 RLWMI $7, R3, $2147483648, R6 // 50663800
415 RLWMI $7, R3, $65535, R6 // 50663c3e
416 RLWMI $7, R3, $16, $31, R6 // 50663c3e
417 RLWMICC $7, R3, $65535, R6 // 50663c3f
418 RLWMICC $7, R3, $16, $31, R6 // 50663c3f
419 RLWNM $3, R4, $7, R6 // 54861f7e
420 RLWNM $0, R4, $7, R6 // 5486077e
421 RLWNM R0, R4, $7, R6 // 5c86077e
422 RLWNM $3, R4, $29, $31, R6 // 54861f7e
423 RLWNM $0, R4, $29, $31, R6 // 5486077e
424 RLWNM R0, R4, $29, $31, R6 // 5c86077e
425 RLWNM R3, R4, $7, R6 // 5c861f7e
426 RLWNM R3, R4, $29, $31, R6 // 5c861f7e
427 RLWNMCC $3, R4, $7, R6 // 54861f7f
428 RLWNMCC $3, R4, $29, $31, R6 // 54861f7f
429 RLWNMCC R3, R4, $7, R6 // 5c861f7f
430 RLWNMCC R3, R4, $29, $31, R6 // 5c861f7f
431 RLDMI $0, R4, $7, R6 // 7886076c
432 RLDMICC $0, R4, $7, R6 // 7886076d
433 RLDIMI $0, R4, $7, R6 // 788601cc
434 RLDIMICC $0, R4, $7, R6 // 788601cd
435 RLDC $0, R4, $15, R6 // 78860728
436 RLDC R3, $32, $12, R4 // 7864030a
437 RLDC R3, $8, $32, R4 // 78644028
438 RLDCCC R3, $32, $12, R4 // 7864030b
439 RLDCCC R3, $8, $32, R4 // 78644029
440 RLDCCC $0, R4, $15, R6 // 78860729
441 RLDCL $0, R4, $7, R6 // 78860770
442 RLDCLCC $0, R4, $15, R6 // 78860721
443 RLDCR $0, R4, $-16, R6 // 788606f2
444 RLDCRCC $0, R4, $-16, R6 // 788606f3
445 RLDICL $0, R4, $15, R6 // 788603c0
446 RLDICLCC $0, R4, $15, R6 // 788603c1
447 RLDICR $0, R4, $15, R6 // 788603c4
448 RLDICRCC $0, R4, $15, R6 // 788603c5
449 RLDIC $0, R4, $15, R6 // 788603c8
450 RLDICCC $0, R4, $15, R6 // 788603c9
451 CLRLSLWI $16, R5, $8, R4 // 54a4422e
452 CLRLSLDI $24, R4, $2, R3 // 78831588
453 RLDCR $1, R1, $-16, R1 // 78210ee4
454 RLDCRCC $1, R1, $-16, R1 // 78210ee5
455 CNTLZW R3,R4 // 7c640034
456 CNTLZWCC R3,R4 // 7c640035
457 CNTLZD R3, R4 // 7c640074
458 CNTLZDCC R3, R4 // 7c640075
459 CNTTZW R3,R4 // 7c640434
460 CNTTZWCC R3,R4 // 7c640435
461 CNTTZD R3,R4 // 7c640474
462 CNTTZDCC R3,R4 // 7c640475
463 NEG R3, R4 // 7c8300d0
464 NEGCC R3, R4 // 7c8300d1
465 NEGV R3, R4 // 7c8304d0
466 NEGVCC R3, R4 // 7c8304d1
468 BEQ 0(PC) // 41820000
469 BEQ CR1,0(PC) // 41860000
470 BGE 0(PC) // 40800000
471 BGE CR2,0(PC) // 40880000
472 BGT 4(PC) // 41810010
473 BGT CR3,4(PC) // 418d0010
474 BLE 0(PC) // 40810000
475 BLE CR4,0(PC) // 40910000
476 BLT 0(PC) // 41800000
477 BLT CR5,0(PC) // 41940000
478 BNE 0(PC) // 40820000
479 BLT CR6,0(PC) // 41980000
480 BVC 0(PC) // 40830000
481 BVS 0(PC) // 41830000
482 JMP 8(PC) // 48000010
489 CRAND CR0GT, CR0EQ, CR0SO // 4c620a02
490 CRANDN CR0GT, CR0EQ, CR0SO // 4c620902
491 CREQV CR0GT, CR0EQ, CR0SO // 4c620a42
492 CRNAND CR0GT, CR0EQ, CR0SO // 4c6209c2
493 CRNOR CR0GT, CR0EQ, CR0SO // 4c620842
494 CROR CR0GT, CR0EQ, CR0SO // 4c620b82
495 CRORN CR0GT, CR0EQ, CR0SO // 4c620b42
496 CRXOR CR0GT, CR0EQ, CR0SO // 4c620982
498 ISEL $0, R3, R4, R5 // 7ca3201e
499 ISEL $1, R3, R4, R5 // 7ca3205e
500 ISEL $2, R3, R4, R5 // 7ca3209e
501 ISEL $3, R3, R4, R5 // 7ca320de
502 ISEL $4, R3, R4, R5 // 7ca3211e
503 ISEL $31, R3, R4, R5 // 7ca327de
504 ISEL CR0LT, R3, R4, R5 // 7ca3201e
505 ISEL CR0GT, R3, R4, R5 // 7ca3205e
506 ISEL CR0EQ, R3, R4, R5 // 7ca3209e
507 ISEL CR0SO, R3, R4, R5 // 7ca320de
508 ISEL CR1LT, R3, R4, R5 // 7ca3211e
509 ISEL CR7SO, R3, R4, R5 // 7ca327de
510 POPCNTB R3, R4 // 7c6400f4
511 POPCNTW R3, R4 // 7c6402f4
512 POPCNTD R3, R4 // 7c6403f4
514 PASTECC R3, R4 // 7c23270d
515 COPY R3, R4 // 7c23260c
518 LBAR (R4)(R3*1),$1,R5 // 7ca32069
519 LBAR (R4)(R0),$1,R5 // 7ca02069
520 LBAR (R4),$0,R5 // 7ca02068
521 LBAR (R3),R5 // 7ca01868
522 LHAR (R4)(R3*1),$1,R5 // 7ca320e9
523 LHAR (R4)(R0),$1,R5 // 7ca020e9
524 LHAR (R4),$0,R5 // 7ca020e8
525 LHAR (R3),R5 // 7ca018e8
526 LWAR (R4)(R3*1),$1,R5 // 7ca32029
527 LWAR (R4)(R0),$1,R5 // 7ca02029
528 LWAR (R4),$0,R5 // 7ca02028
529 LWAR (R3),R5 // 7ca01828
530 LDAR (R4)(R3*1),$1,R5 // 7ca320a9
531 LDAR (R4)(R0),$1,R5 // 7ca020a9
532 LDAR (R4),$0,R5 // 7ca020a8
533 LDAR (R3),R5 // 7ca018a8
535 LSW (R3)(R4), R5 // 7ca41c2a
536 LSW (R3)(R0), R5 // 7ca01c2a
537 LSW (R3), R5 // 7ca01c2a
539 STBCCC R3, (R4)(R5) // 7c65256d
540 STBCCC R3, (R4)(R0) // 7c60256d
541 STBCCC R3, (R4) // 7c60256d
542 STWCCC R3, (R4)(R5) // 7c65212d
543 STWCCC R3, (R4)(R0) // 7c60212d
544 STWCCC R3, (R4) // 7c60212d
545 STDCCC R3, (R4)(R5) // 7c6521ad
546 STDCCC R3, (R4)(R0) // 7c6021ad
547 STDCCC R3, (R4) // 7c6021ad
548 STHCCC R3, (R4)(R5) // 7c6525ad
549 STHCCC R3, (R4)(R0) // 7c6025ad
550 STHCCC R3, (R4) // 7c6025ad
551 STSW R3, (R4)(R5) // 7c65252a
552 STSW R3, (R4)(R0) // 7c60252a
553 STSW R3, (R4) // 7c60252a
561 TLBIEL R3 // 7c001a24
566 SLBMFEE R3, R4 // 7c801f26
567 SLBMFEV R3, R4 // 7c801ea6
568 SLBMTE R3, R4 // 7c801b24
570 TW $31, R0, R0 // 7fe00008
571 TD $31, R0, R0 // 7fe00088
572 DARN $1, R5 // 7ca105e6
574 DCBF (R3)(R4) // 7c0418ac
575 DCBF (R3)(R0) // 7c0018ac
576 DCBF (R3) // 7c0018ac
578 DCBST (R3)(R4) // 7c04186c
579 DCBST (R3)(R0) // 7c00186c
580 DCBST (R3) // 7c00186c
581 DCBZ (R3)(R4) // 7c041fec
582 DCBZ (R3)(R0) // 7c001fec
583 DCBZ (R3) // 7c001fec
584 DCBT (R3)(R4) // 7c041a2c
585 DCBT (R3)(R0) // 7c001a2c
586 DCBT (R3) // 7c001a2c
587 ICBI (R3)(R4) // 7c041fac
588 ICBI (R3)(R0) // 7c001fac
589 ICBI (R3) // 7c001fac
592 FMOVD $(0.0), F1 // f0210cd0
593 FMOVD $(-0.0), F1 // f0210cd0fc200850
595 FMOVD 8(R3), F1 // c8230008
596 FMOVD (R3)(R4), F1 // 7c241cae
597 FMOVD (R3)(R0), F1 // 7c201cae
598 FMOVD (R3), F1 // c8230000
599 FMOVDU 8(R3), F1 // cc230008
600 FMOVDU (R3)(R4), F1 // 7c241cee
601 FMOVDU (R3)(R0), F1 // 7c201cee
602 FMOVDU (R3), F1 // cc230000
603 FMOVS 4(R3), F1 // c0230004
604 FMOVS (R3)(R4), F1 // 7c241c2e
605 FMOVS (R3)(R0), F1 // 7c201c2e
606 FMOVS (R3), F1 // c0230000
607 FMOVSU 4(R3), F1 // c4230004
608 FMOVSU (R3)(R4), F1 // 7c241c6e
609 FMOVSU (R3)(R0), F1 // 7c201c6e
610 FMOVSU (R3), F1 // c4230000
611 FMOVSX (R3)(R4), F1 // 7c241eae
612 FMOVSX (R3)(R0), F1 // 7c201eae
613 FMOVSX (R3), F1 // 7c201eae
614 FMOVSZ (R3)(R4), F1 // 7c241eee
615 FMOVSZ (R3)(R0), F1 // 7c201eee
616 FMOVSZ (R3), F1 // 7c201eee
618 FMOVD F1, 8(R3) // d8230008
619 FMOVD F1, (R3)(R4) // 7c241dae
620 FMOVD F1, (R3)(R0) // 7c201dae
621 FMOVD F1, (R3) // d8230000
622 FMOVDU F1, 8(R3) // dc230008
623 FMOVDU F1, (R3)(R4) // 7c241dee
624 FMOVDU F1, (R3)(R0) // 7c201dee
625 FMOVDU F1, (R3) // dc230000
626 FMOVS F1, 4(R3) // d0230004
627 FMOVS F1, (R3)(R4) // 7c241d2e
628 FMOVS F1, (R3)(R0) // 7c201d2e
629 FMOVS F1, (R3) // d0230000
630 FMOVSU F1, 4(R3) // d4230004
631 FMOVSU F1, (R3)(R4) // 7c241d6e
632 FMOVSU F1, (R3)(R0) // 7c201d6e
633 FMOVSU F1, (R3) // d4230000
634 FMOVSX F1, (R3)(R4) // 7c241fae
635 FMOVSX F1, (R3)(R0) // 7c201fae
636 FMOVSX F1, (R3) // 7c201fae
637 FADD F1, F2 // fc42082a
638 FADD F1, F2, F3 // fc62082a
639 FADDCC F1, F2, F3 // fc62082b
640 FMOVDCC F1, F2 // fc400891
641 FADDS F1, F2 // ec42082a
642 FADDS F1, F2, F3 // ec62082a
643 FADDSCC F1, F2, F3 // ec62082b
644 FSUB F1, F2 // fc420828
645 FSUB F1, F2, F3 // fc620828
646 FSUBCC F1, F2, F3 // fc620829
647 FSUBS F1, F2 // ec420828
648 FSUBS F1, F2, F3 // ec620828
649 FSUBCC F1, F2, F3 // fc620829
650 FSUBSCC F1, F2, F3 // ec620829
651 FMUL F1, F2 // fc420072
652 FMUL F1, F2, F3 // fc620072
653 FMULCC F1, F2, F3 // fc620073
654 FMULS F1, F2 // ec420072
655 FMULS F1, F2, F3 // ec620072
656 FMULSCC F1, F2, F3 // ec620073
657 FDIV F1, F2 // fc420824
658 FDIV F1, F2, F3 // fc620824
659 FDIVCC F1, F2, F3 // fc620825
660 FDIVS F1, F2 // ec420824
661 FDIVS F1, F2, F3 // ec620824
662 FDIVSCC F1, F2, F3 // ec620825
663 FTDIV F1, F2, $2 // fd011100
664 FTSQRT F1, $2 // fd000940
665 FMADD F1, F2, F3, F4 // fc8110fa
666 FMADDCC F1, F2, F3, F4 // fc8110fb
667 FMADDS F1, F2, F3, F4 // ec8110fa
668 FMADDSCC F1, F2, F3, F4 // ec8110fb
669 FMSUB F1, F2, F3, F4 // fc8110f8
670 FMSUBCC F1, F2, F3, F4 // fc8110f9
671 FMSUBS F1, F2, F3, F4 // ec8110f8
672 FMSUBSCC F1, F2, F3, F4 // ec8110f9
673 FNMADD F1, F2, F3, F4 // fc8110fe
674 FNMADDCC F1, F2, F3, F4 // fc8110ff
675 FNMADDS F1, F2, F3, F4 // ec8110fe
676 FNMADDSCC F1, F2, F3, F4 // ec8110ff
677 FNMSUB F1, F2, F3, F4 // fc8110fc
678 FNMSUBCC F1, F2, F3, F4 // fc8110fd
679 FNMSUBS F1, F2, F3, F4 // ec8110fc
680 FNMSUBSCC F1, F2, F3, F4 // ec8110fd
681 FSEL F1, F2, F3, F4 // fc8110ee
682 FSELCC F1, F2, F3, F4 // fc8110ef
683 FABS F1, F2 // fc400a10
684 FNABS F1, F2 // fc400910
685 FABSCC F1, F2 // fc400a11
686 FNABSCC F1, F2 // fc400911
687 FNEG F1, F2 // fc400850
688 FNEGCC F1, F2 // fc400851
689 FABSCC F1, F2 // fc400a11
690 FRSP F1, F2 // fc400818
691 FRSPCC F1, F2 // fc400819
692 FCTIW F1, F2 // fc40081c
693 FCTIWCC F1, F2 // fc40081d
694 FCTIWZ F1, F2 // fc40081e
695 FCTIWZCC F1, F2 // fc40081f
696 FCTID F1, F2 // fc400e5c
697 FCTIDCC F1, F2 // fc400e5d
698 FCTIDZ F1, F2 // fc400e5e
699 FCTIDZCC F1, F2 // fc400e5f
700 FCFID F1, F2 // fc400e9c
701 FCFIDCC F1, F2 // fc400e9d
702 FCFIDU F1, F2 // fc400f9c
703 FCFIDUCC F1, F2 // fc400f9d
704 FCFIDS F1, F2 // ec400e9c
705 FCFIDSCC F1, F2 // ec400e9d
706 FRES F1, F2 // ec400830
707 FRESCC F1, F2 // ec400831
708 FRIM F1, F2 // fc400bd0
709 FRIMCC F1, F2 // fc400bd1
710 FRIP F1, F2 // fc400b90
711 FRIPCC F1, F2 // fc400b91
712 FRIZ F1, F2 // fc400b50
713 FRIZCC F1, F2 // fc400b51
714 FRIN F1, F2 // fc400b10
715 FRINCC F1, F2 // fc400b11
716 FRSQRTE F1, F2 // fc400834
717 FRSQRTECC F1, F2 // fc400835
718 FSQRT F1, F2 // fc40082c
719 FSQRTCC F1, F2 // fc40082d
720 FSQRTS F1, F2 // ec40082c
721 FSQRTSCC F1, F2 // ec40082d
722 FCPSGN F1, F2 // fc420810
723 FCPSGNCC F1, F2 // fc420811
724 FCMPO F1, F2 // fc011040
725 FCMPU F1, F2 // fc011000
726 LVX (R3)(R4), V1 // 7c2418ce
727 LVX (R3)(R0), V1 // 7c2018ce
728 LVX (R3), V1 // 7c2018ce
729 LVXL (R3)(R4), V1 // 7c241ace
730 LVXL (R3)(R0), V1 // 7c201ace
731 LVXL (R3), V1 // 7c201ace
732 LVSL (R3)(R4), V1 // 7c24180c
733 LVSL (R3)(R0), V1 // 7c20180c
734 LVSL (R3), V1 // 7c20180c
735 LVSR (R3)(R4), V1 // 7c24184c
736 LVSR (R3)(R0), V1 // 7c20184c
737 LVSR (R3), V1 // 7c20184c
738 LVEBX (R3)(R4), V1 // 7c24180e
739 LVEBX (R3)(R0), V1 // 7c20180e
740 LVEBX (R3), V1 // 7c20180e
741 LVEHX (R3)(R4), V1 // 7c24184e
742 LVEHX (R3)(R0), V1 // 7c20184e
743 LVEHX (R3), V1 // 7c20184e
744 LVEWX (R3)(R4), V1 // 7c24188e
745 LVEWX (R3)(R0), V1 // 7c20188e
746 LVEWX (R3), V1 // 7c20188e
747 STVX V1, (R3)(R4) // 7c2419ce
748 STVX V1, (R3)(R0) // 7c2019ce
749 STVX V1, (R3) // 7c2019ce
750 STVXL V1, (R3)(R4) // 7c241bce
751 STVXL V1, (R3)(R0) // 7c201bce
752 STVXL V1, (R3) // 7c201bce
753 STVEBX V1, (R3)(R4) // 7c24190e
754 STVEBX V1, (R3)(R0) // 7c20190e
755 STVEBX V1, (R3) // 7c20190e
756 STVEHX V1, (R3)(R4) // 7c24194e
757 STVEHX V1, (R3)(R0) // 7c20194e
758 STVEHX V1, (R3) // 7c20194e
759 STVEWX V1, (R3)(R4) // 7c24198e
760 STVEWX V1, (R3)(R0) // 7c20198e
761 STVEWX V1, (R3) // 7c20198e
763 VAND V1, V2, V3 // 10611404
764 VANDC V1, V2, V3 // 10611444
765 VNAND V1, V2, V3 // 10611584
766 VOR V1, V2, V3 // 10611484
767 VORC V1, V2, V3 // 10611544
768 VXOR V1, V2, V3 // 106114c4
769 VNOR V1, V2, V3 // 10611504
770 VEQV V1, V2, V3 // 10611684
771 VADDUBM V1, V2, V3 // 10611000
772 VADDUHM V1, V2, V3 // 10611040
773 VADDUWM V1, V2, V3 // 10611080
774 VADDUDM V1, V2, V3 // 106110c0
775 VADDUQM V1, V2, V3 // 10611100
776 VADDCUQ V1, V2, V3 // 10611140
777 VADDCUW V1, V2, V3 // 10611180
778 VADDUBS V1, V2, V3 // 10611200
779 VADDUHS V1, V2, V3 // 10611240
780 VADDUWS V1, V2, V3 // 10611280
781 VADDSBS V1, V2, V3 // 10611300
782 VADDSHS V1, V2, V3 // 10611340
783 VADDSWS V1, V2, V3 // 10611380
784 VADDEUQM V1, V2, V3, V4 // 108110fc
785 VADDECUQ V1, V2, V3, V4 // 108110fd
786 VSUBUBM V1, V2, V3 // 10611400
787 VSUBUHM V1, V2, V3 // 10611440
788 VSUBUWM V1, V2, V3 // 10611480
789 VSUBUDM V1, V2, V3 // 106114c0
790 VSUBUQM V1, V2, V3 // 10611500
791 VSUBCUQ V1, V2, V3 // 10611540
792 VSUBCUW V1, V2, V3 // 10611580
793 VSUBUBS V1, V2, V3 // 10611600
794 VSUBUHS V1, V2, V3 // 10611640
795 VSUBUWS V1, V2, V3 // 10611680
796 VSUBSBS V1, V2, V3 // 10611700
797 VSUBSHS V1, V2, V3 // 10611740
798 VSUBSWS V1, V2, V3 // 10611780
799 VSUBEUQM V1, V2, V3, V4 // 108110fe
800 VSUBECUQ V1, V2, V3, V4 // 108110ff
801 VMULESB V1, V2, V3 // 10611308
802 VMULESW V1, V2, V3 // 10611388
803 VMULOSB V1, V2, V3 // 10611108
804 VMULEUB V1, V2, V3 // 10611208
805 VMULOUB V1, V2, V3 // 10611008
806 VMULESH V1, V2, V3 // 10611348
807 VMULOSH V1, V2, V3 // 10611148
808 VMULEUH V1, V2, V3 // 10611248
809 VMULOUH V1, V2, V3 // 10611048
810 VMULESH V1, V2, V3 // 10611348
811 VMULOSW V1, V2, V3 // 10611188
812 VMULEUW V1, V2, V3 // 10611288
813 VMULOUW V1, V2, V3 // 10611088
814 VMULUWM V1, V2, V3 // 10611089
815 VPMSUMB V1, V2, V3 // 10611408
816 VPMSUMH V1, V2, V3 // 10611448
817 VPMSUMW V1, V2, V3 // 10611488
818 VPMSUMD V1, V2, V3 // 106114c8
819 VMSUMUDM V1, V2, V3, V4 // 108110e3
820 VRLB V1, V2, V3 // 10611004
821 VRLH V1, V2, V3 // 10611044
822 VRLW V1, V2, V3 // 10611084
823 VRLD V1, V2, V3 // 106110c4
824 VSLB V1, V2, V3 // 10611104
825 VSLH V1, V2, V3 // 10611144
826 VSLW V1, V2, V3 // 10611184
827 VSL V1, V2, V3 // 106111c4
828 VSLO V1, V2, V3 // 1061140c
829 VSRB V1, V2, V3 // 10611204
830 VSRH V1, V2, V3 // 10611244
831 VSRW V1, V2, V3 // 10611284
832 VSRD V1, V2, V3 // 106116c4
833 VSR V1, V2, V3 // 106112c4
834 VSRO V1, V2, V3 // 1061144c
835 VSLD V1, V2, V3 // 106115c4
836 VSRAB V1, V2, V3 // 10611304
837 VSRAH V1, V2, V3 // 10611344
838 VSRAW V1, V2, V3 // 10611384
839 VSRAD V1, V2, V3 // 106113c4
840 VSLDOI $3, V1, V2, V3 // 106110ec
841 VCLZB V1, V2 // 10400f02
842 VCLZH V1, V2 // 10400f42
843 VCLZW V1, V2 // 10400f82
844 VCLZD V1, V2 // 10400fc2
845 VPOPCNTB V1, V2 // 10400f03
846 VPOPCNTH V1, V2 // 10400f43
847 VPOPCNTW V1, V2 // 10400f83
848 VPOPCNTD V1, V2 // 10400fc3
849 VCMPEQUB V1, V2, V3 // 10611006
850 VCMPEQUBCC V1, V2, V3 // 10611406
851 VCMPEQUH V1, V2, V3 // 10611046
852 VCMPEQUHCC V1, V2, V3 // 10611446
853 VCMPEQUW V1, V2, V3 // 10611086
854 VCMPEQUWCC V1, V2, V3 // 10611486
855 VCMPEQUD V1, V2, V3 // 106110c7
856 VCMPEQUDCC V1, V2, V3 // 106114c7
857 VCMPGTUB V1, V2, V3 // 10611206
858 VCMPGTUBCC V1, V2, V3 // 10611606
859 VCMPGTUH V1, V2, V3 // 10611246
860 VCMPGTUHCC V1, V2, V3 // 10611646
861 VCMPGTUW V1, V2, V3 // 10611286
862 VCMPGTUWCC V1, V2, V3 // 10611686
863 VCMPGTUD V1, V2, V3 // 106112c7
864 VCMPGTUDCC V1, V2, V3 // 106116c7
865 VCMPGTSB V1, V2, V3 // 10611306
866 VCMPGTSBCC V1, V2, V3 // 10611706
867 VCMPGTSH V1, V2, V3 // 10611346
868 VCMPGTSHCC V1, V2, V3 // 10611746
869 VCMPGTSW V1, V2, V3 // 10611386
870 VCMPGTSWCC V1, V2, V3 // 10611786
871 VCMPGTSD V1, V2, V3 // 106113c7
872 VCMPGTSDCC V1, V2, V3 // 106117c7
873 VCMPNEZB V1, V2, V3 // 10611107
874 VCMPNEZBCC V1, V2, V3 // 10611507
875 VCMPNEB V1, V2, V3 // 10611007
876 VCMPNEBCC V1, V2, V3 // 10611407
877 VCMPNEH V1, V2, V3 // 10611047
878 VCMPNEHCC V1, V2, V3 // 10611447
879 VCMPNEW V1, V2, V3 // 10611087
880 VCMPNEWCC V1, V2, V3 // 10611487
881 VPERM V1, V2, V3, V4 // 108110eb
882 VPERMR V1, V2, V3, V4 // 108110fb
883 VPERMXOR V1, V2, V3, V4 // 108110ed
884 VBPERMQ V1, V2, V3 // 1061154c
885 VBPERMD V1, V2, V3 // 106115cc
886 VSEL V1, V2, V3, V4 // 108110ea
887 VSPLTB $1, V1, V2 // 10410a0c
888 VSPLTH $1, V1, V2 // 10410a4c
889 VSPLTW $1, V1, V2 // 10410a8c
890 VSPLTISB $1, V1 // 1021030c
891 VSPLTISW $1, V1 // 1021038c
892 VSPLTISH $1, V1 // 1021034c
893 VCIPHER V1, V2, V3 // 10611508
894 VCIPHERLAST V1, V2, V3 // 10611509
895 VNCIPHER V1, V2, V3 // 10611548
896 VNCIPHERLAST V1, V2, V3 // 10611549
897 VSBOX V1, V2 // 104105c8
898 VSHASIGMAW $1, V1, $15, V2 // 10418e82
899 VSHASIGMAW $1, $15, V1, V2 // 10418e82
900 VSHASIGMAD $2, V1, $15, V2 // 104196c2
901 VSHASIGMAD $2, $15, V1, V2 // 104196c2
903 LXVD2X (R3)(R4), VS1 // 7c241e98
904 LXVD2X (R3)(R0), VS1 // 7c201e98
905 LXVD2X (R3), VS1 // 7c201e98
906 LXVDSX (R3)(R4), VS1 // 7c241a98
907 LXVDSX (R3)(R0), VS1 // 7c201a98
908 LXVDSX (R3), VS1 // 7c201a98
909 LXVH8X (R3)(R4), VS1 // 7c241e58
910 LXVH8X (R3)(R0), VS1 // 7c201e58
911 LXVH8X (R3), VS1 // 7c201e58
912 LXVB16X (R3)(R4), VS1 // 7c241ed8
913 LXVB16X (R3)(R0), VS1 // 7c201ed8
914 LXVB16X (R3), VS1 // 7c201ed8
915 LXVW4X (R3)(R4), VS1 // 7c241e18
916 LXVW4X (R3)(R0), VS1 // 7c201e18
917 LXVW4X (R3), VS1 // 7c201e18
918 LXV 16(R3), VS1 // f4230011
919 LXV (R3), VS1 // f4230001
920 LXV 16(R3), VS33 // f4230019
921 LXV (R3), VS33 // f4230009
922 LXV 16(R3), V1 // f4230019
923 LXV (R3), V1 // f4230009
924 LXVL R3, R4, VS1 // 7c23221a
925 LXVLL R3, R4, VS1 // 7c23225a
926 LXVX R3, R4, VS1 // 7c232218
927 LXSDX (R3)(R4), VS1 // 7c241c98
928 LXSDX (R3)(R0), VS1 // 7c201c98
929 LXSDX (R3), VS1 // 7c201c98
930 STXVD2X VS1, (R3)(R4) // 7c241f98
931 STXVD2X VS1, (R3)(R0) // 7c201f98
932 STXVD2X VS1, (R3) // 7c201f98
933 STXVW4X VS1, (R3)(R4) // 7c241f18
934 STXVW4X VS1, (R3)(R0) // 7c201f18
935 STXVW4X VS1, (R3) // 7c201f18
936 STXV VS1,16(R3) // f4230015
937 STXV VS1,(R3) // f4230005
938 STXVL VS1, R3, R4 // 7c23231a
939 STXVLL VS1, R3, R4 // 7c23235a
940 STXVX VS1, R3, R4 // 7c232318
941 STXVB16X VS1, (R4)(R5) // 7c2527d8
942 STXVB16X VS1, (R4)(R0) // 7c2027d8
943 STXVB16X VS1, (R4) // 7c2027d8
944 STXVH8X VS1, (R4)(R5) // 7c252758
945 STXVH8X VS1, (R4)(R0) // 7c202758
946 STXVH8X VS1, (R4) // 7c202758
947 STXSDX VS1, (R3)(R4) // 7c241d98
948 STXSDX VS1, (R4)(R0) // 7c202598
949 STXSDX VS1, (R4) // 7c202598
950 LXSIWAX (R3)(R4), VS1 // 7c241898
951 LXSIWAX (R3)(R0), VS1 // 7c201898
952 LXSIWAX (R3), VS1 // 7c201898
953 LXSIWZX (R3)(R4), VS1 // 7c241818
954 LXSIWZX (R3)(R0), VS1 // 7c201818
955 LXSIWZX (R3), VS1 // 7c201818
956 STXSIWX VS1, (R3)(R4) // 7c241918
957 STXSIWX VS1, (R3)(R0) // 7c201918
958 STXSIWX VS1, (R3) // 7c201918
959 MFVSRD VS1, R3 // 7c230066
960 MTFPRD R3, F0 // 7c030166
961 MFVRD V0, R3 // 7c030067
962 MFVSRLD VS63,R4 // 7fe40267
963 MFVSRLD V31,R4 // 7fe40267
964 MFVSRWZ VS33,R4 // 7c2400e7
965 MFVSRWZ V1,R4 // 7c2400e7
966 MTVSRD R3, VS1 // 7c230166
967 MTVSRDD R3, R4, VS1 // 7c232366
968 MTVSRDD R3, R4, VS33 // 7c232367
969 MTVSRDD R3, R4, V1 // 7c232367
970 MTVRD R3, V13 // 7da30167
971 MTVSRWA R4, VS31 // 7fe401a6
972 MTVSRWS R4, VS32 // 7c040327
973 MTVSRWZ R4, VS63 // 7fe401e7
974 MTFSB0 $2 // fc40008c
975 MTFSB0CC $2 // fc40008d
976 MTFSB1 $2 // fc40004c
977 MTFSB1CC $2 // fc40004d
978 XXBRQ VS0, VS1 // f03f076c
979 XXBRD VS0, VS1 // f037076c
980 XXBRW VS1, VS2 // f04f0f6c
981 XXBRH VS2, VS3 // f067176c
982 XXLAND VS1, VS2, VS3 // f0611410
983 XXLAND V1, V2, V3 // f0611417
984 XXLAND VS33, VS34, VS35 // f0611417
985 XXLANDC VS1, VS2, VS3 // f0611450
986 XXLEQV VS0, VS1, VS2 // f0400dd0
987 XXLNAND VS0, VS1, VS2 // f0400d90
988 XXLNOR VS0, VS1, VS32 // f0000d11
989 XXLOR VS1, VS2, VS3 // f0611490
990 XXLORC VS1, VS2, VS3 // f0611550
991 XXLORQ VS1, VS2, VS3 // f0611490
992 XXLXOR VS1, VS2, VS3 // f06114d0
993 XXSEL VS1, VS2, VS3, VS4 // f08110f0
994 XXSEL VS33, VS34, VS35, VS36 // f08110ff
995 XXSEL V1, V2, V3, V4 // f08110ff
996 XXMRGHW VS1, VS2, VS3 // f0611090
997 XXMRGLW VS1, VS2, VS3 // f0611190
998 XXSPLTW VS1, $1, VS2 // f0410a90
999 XXSPLTW VS33, $1, VS34 // f0410a93
1000 XXSPLTW V1, $1, V2 // f0410a93
1001 XXPERM VS1, VS2, VS3 // f06110d0
1002 XXSLDWI VS1, VS2, $1, VS3 // f0611110
1003 XXSLDWI V1, V2, $1, V3 // f0611117
1004 XXSLDWI V1, $1, V2, V3 // f0611117
1005 XXSLDWI VS33, VS34, $1, VS35 // f0611117
1006 XXSLDWI VS33, $1, VS34, VS35 // f0611117
1007 XXPERMDI VS33, VS34, $1, VS35 // f0611157
1008 XXPERMDI VS33, $1, VS34, VS35 // f0611157
1009 XSCVDPSP VS1, VS2 // f0400c24
1010 XVCVDPSP VS1, VS2 // f0400e24
1011 XSCVSXDDP VS1, VS2 // f0400de0
1012 XVCVDPSXDS VS1, VS2 // f0400f60
1013 XVCVSXDDP VS1, VS2 // f0400fe0
1014 XSCVDPSPN VS1,VS32 // f0000c2d
1015 XSCVDPSP VS1,VS32 // f0000c25
1016 XSCVDPSXDS VS1,VS32 // f0000d61
1017 XSCVDPSXWS VS1,VS32 // f0000961
1018 XSCVDPUXDS VS1,VS32 // f0000d21
1019 XSCVDPUXWS VS1,VS32 // f0000921
1020 XSCVSPDPN VS1,VS32 // f0000d2d
1021 XSCVSPDP VS1,VS32 // f0000d25
1022 XSCVSXDDP VS1,VS32 // f0000de1
1023 XSCVSXDSP VS1,VS32 // f0000ce1
1024 XSCVUXDDP VS1,VS32 // f0000da1
1025 XSCVUXDSP VS1,VS32 // f0000ca1
1026 XVCVDPSP VS1,VS32 // f0000e25
1027 XVCVDPSXDS VS1,VS32 // f0000f61
1028 XVCVDPSXWS VS1,VS32 // f0000b61
1029 XVCVDPUXDS VS1,VS32 // f0000f21
1030 XVCVDPUXWS VS1,VS32 // f0000b21
1031 XVCVSPDP VS1,VS32 // f0000f25
1032 XVCVSPSXDS VS1,VS32 // f0000e61
1033 XVCVSPSXWS VS1,VS32 // f0000a61
1034 XVCVSPUXDS VS1,VS32 // f0000e21
1035 XVCVSPUXWS VS1,VS32 // f0000a21
1036 XVCVSXDDP VS1,VS32 // f0000fe1
1037 XVCVSXDSP VS1,VS32 // f0000ee1
1038 XVCVSXWDP VS1,VS32 // f0000be1
1039 XVCVSXWSP VS1,VS32 // f0000ae1
1040 XVCVUXDDP VS1,VS32 // f0000fa1
1041 XVCVUXDSP VS1,VS32 // f0000ea1
1042 XVCVUXWDP VS1,VS32 // f0000ba1
1043 XVCVUXWSP VS1,VS32 // f0000aa1
1045 MOVD R3, LR // 7c6803a6
1046 MOVD R3, CTR // 7c6903a6
1047 MOVD R3, XER // 7c6103a6
1048 MOVD LR, R3 // 7c6802a6
1049 MOVD CTR, R3 // 7c6902a6
1050 MOVD XER, R3 // 7c6102a6
1051 MOVFL CR3, CR1 // 4c8c0000
1053 MOVW CR0, R1 // 7c380026
1054 MOVW CR7, R1 // 7c301026
1055 MOVW CR, R1 // 7c200026
1057 MOVW R1, CR // 7c2ff120
1058 MOVFL R1, CR // 7c2ff120
1059 MOVW R1, CR2 // 7c320120
1060 MOVFL R1, CR2 // 7c320120
1061 MOVFL R1, $255 // 7c2ff120
1062 MOVFL R1, $1 // 7c301120
1063 MOVFL R1, $128 // 7c380120
1064 MOVFL R1, $3 // 7c203120
1065 MOVMW 4(R3), R4 // b8830004
1068 // Verify supported bdnz/bdz encodings.
1069 BC 16,0,0(PC) // BC $16, CR0LT, 0(PC) // 42000000
1070 BDNZ 0(PC) // 42000000
1071 BDZ 0(PC) // 42400000
1072 BC 18,0,0(PC) // BC $18, CR0LT, 0(PC) // 42400000
1074 // Verify the supported forms of bcclr[l]
1075 BC $20,CR0LT,$1,LR // 4e800820
1076 BC $20,CR0LT,$0,LR // 4e800020
1077 BC $20,CR0LT,LR // 4e800020
1078 BC $20,CR0GT,LR // 4e810020
1079 BC 20,CR0LT,LR // BC $20,CR0LT,LR // 4e800020
1080 BC 20,undefined_symbol,LR // BC $20,CR0LT,LR // 4e800020
1081 BC 20,undefined_symbol+1,LR // BC $20,CR0GT,LR // 4e810020
1083 BR LR // JMP LR // 4e800020
1084 BCL $20,CR0LT,$1,LR // 4e800821
1085 BCL $20,CR0LT,$0,LR // 4e800021
1086 BCL $20,CR0LT,LR // 4e800021
1087 BCL $20,CR0GT,LR // 4e810021
1088 BCL 20,CR0LT,LR // BCL $20,CR0LT,LR // 4e800021
1089 BCL 20,undefined_symbol,LR // BCL $20,CR0LT,LR // 4e800021
1090 BCL 20,undefined_symbol+1,LR // BCL $20,CR0GT,LR // 4e810021
1092 // Verify the supported forms of bcctr[l]
1093 BC $20,CR0LT,CTR // 4e800420
1094 BC $20,CR0GT,CTR // 4e810420
1095 BC 20,CR0LT,CTR // BC $20,CR0LT,CTR // 4e800420
1096 BC 20,undefined_symbol,CTR // BC $20,CR0LT,CTR // 4e800420
1097 BC 20,undefined_symbol+1,CTR // BC $20,CR0GT,CTR // 4e810420
1099 BR CTR // JMP CTR // 4e800420
1100 BCL $20,CR0LT,CTR // 4e800421
1101 BCL $20,CR0GT,CTR // 4e810421
1102 BCL 20,CR0LT,CTR // BCL $20,CR0LT,CTR // 4e800421
1103 BCL 20,undefined_symbol,CTR // BCL $20,CR0LT,CTR // 4e800421
1104 BCL 20,undefined_symbol+1,CTR // BCL $20,CR0GT,CTR // 4e810421
1106 // Verify bc encoding (without pic enabled)
1107 BC $16,CR0LT,0(PC) // 42000000
1108 BCL $16,CR0LT,0(PC) // 42000001
1109 BC $18,CR0LT,0(PC) // 42400000
1111 MOVD SPR(3), 4(R1) // 7fe302a6fbe10004
1112 MOVD XER, 4(R1) // 7fe102a6fbe10004
1113 MOVD 4(R1), SPR(3) // ebe100047fe303a6
1114 MOVD 4(R1), XER // ebe100047fe103a6
1115 PNOP // 0700000000000000
1117 SETB CR1,R3 // 7c640100
1118 VCLZLSBB V1, R2 // 10400e02
1119 VCTZLSBB V1, R2 // 10410e02