updating sv_analys.py svp64 table
[libreriscv.git] / openpower / opcode_regs_deduped.mdwn
1 # OpenPOWER ISA register 'profile's
2
3 this page is auto-generated, do not edit
4 created by http://libre-soc.org/openpower/sv_analysis.py
5
6 # map to old SV Prefix
7
8 [[!table data="""
9 LDST-1R-1W-imm | LDSTRM-2P-1S1D |
10 LDST-1R-2W-imm | LDSTRM-2P-1S2D |
11 LDST-2R-imm | LDSTRM-2P-2S |
12 LDST-2R-1W | LDSTRM-2P-2S1D |
13 LDST-2R-1W-imm | LDSTRM-2P-2S1D |
14 LDST-2R-2W | LDSTRM-2P-2S1D |
15 LDST-3R | LDSTRM-2P-3S |
16 LDST-3R-CRo | LDSTRM-2P-3S |
17 LDST-3R-1W | LDSTRM-2P-2S1D |
18 | non-SV |
19 imm | non-SV |
20 CRi | non-SV |
21 CRi | non-SV |
22 CRio | RM-2P-1S1D |
23 CR=2R1W | RM-1P-2S1D |
24 1W | non-SV |
25 1W-CRi | RM-2P-1S1D |
26 1R | non-SV |
27 1R-imm | non-SV |
28 1R-CRo | RM-2P-1S1D |
29 1R-CRio | RM-2P-2S1D |
30 1R-1W | RM-2P-1S1D |
31 1R-1W-imm | RM-2P-1S1D |
32 1R-1W-CRo | RM-2P-1S1D |
33 1R-1W-CRo | RM-2P-1S1D |
34 1R-1W-CRio | RM-2P-1S1D |
35 2R | non-SV |
36 2R-CRo | RM-1P-2S1D |
37 2R-CRio | RM-1P-2S1D |
38 2R-1W | RM-1P-2S1D |
39 2R-1W-CRo | RM-1P-2S1D |
40 2R-1W-CRo | RM-1P-2S1D |
41 2R-1W-CRi | RM-1P-3S1D |
42 2R-1W-CRio | RM-1P-2S1D |
43 3R-1W-CRio | RM-1P-3S1D |
44 """]]
45
46 # keys
47
48 [[!table data="""
49 unit | in | outcnt | CR in | CR out | imm | imms | name |
50 LDST | 1 | 1 | 0 | 0 | 1 | DS/SI | LDST-1R-1W-imm |
51 LDST | 1 | 2 | 0 | 0 | 1 | DS/SI | LDST-1R-2W-imm |
52 LDST | 2 | 0 | 0 | 0 | 1 | DS/SI | LDST-2R-imm |
53 LDST | 2 | 1 | 0 | 0 | | | LDST-2R-1W |
54 LDST | 2 | 1 | 0 | 0 | 1 | DS/SI | LDST-2R-1W-imm |
55 LDST | 2 | 2 | 0 | 0 | | | LDST-2R-2W |
56 LDST | 3 | 0 | 0 | 0 | | | LDST-3R |
57 LDST | 3 | 0 | 0 | 1 | | | LDST-3R-CRo |
58 LDST | 3 | 1 | 0 | 0 | | | LDST-3R-1W |
59 OTHER | 0 | 0 | 0 | 0 | | | |
60 OTHER | 0 | 0 | 0 | 0 | 1 | LI | imm |
61 OTHER | 0 | 0 | 1 | 0 | | | CRi |
62 OTHER | 0 | 0 | 1 | 0 | 1 | BD | CRi |
63 OTHER | 0 | 0 | 1 | 1 | | | CRio |
64 OTHER | 0 | 0 | 1 | 1 | 1 | | | CR=2R1W |
65 OTHER | 0 | 1 | 0 | 0 | | | 1W |
66 OTHER | 0 | 1 | 1 | 0 | | | 1W-CRi |
67 OTHER | 1 | 0 | 0 | 0 | | | 1R |
68 OTHER | 1 | 0 | 0 | 0 | 1 | SI | 1R-imm |
69 OTHER | 1 | 0 | 0 | 1 | 1 | SI/UI | 1R-CRo |
70 OTHER | 1 | 0 | 1 | 1 | | | 1R-CRio |
71 OTHER | 1 | 1 | 0 | 0 | | | 1R-1W |
72 OTHER | 1 | 1 | 0 | 0 | 1 | SI/UI | 1R-1W-imm |
73 OTHER | 1 | 1 | 0 | 1 | | | 1R-1W-CRo |
74 OTHER | 1 | 1 | 0 | 1 | 1 | M1/SH/SH32/SI/UI | 1R-1W-CRo |
75 OTHER | 1 | 1 | 1 | 1 | | | 1R-1W-CRio |
76 OTHER | 2 | 0 | 0 | 0 | | | 2R |
77 OTHER | 2 | 0 | 0 | 1 | | | 2R-CRo |
78 OTHER | 2 | 0 | 1 | 1 | | | 2R-CRio |
79 OTHER | 2 | 1 | 0 | 0 | | | 2R-1W |
80 OTHER | 2 | 1 | 0 | 1 | | | 2R-1W-CRo |
81 OTHER | 2 | 1 | 0 | 1 | 1 | SH/SH32 | 2R-1W-CRo |
82 OTHER | 2 | 1 | 1 | 0 | | | 2R-1W-CRi |
83 OTHER | 2 | 1 | 1 | 1 | | | 2R-1W-CRio |
84 OTHER | 3 | 1 | 1 | 1 | | | 3R-1W-CRio |
85 """]]
86
87 ## LDST-1R-1W-imm (LDSTRM-2P-1S1D)
88
89 [[!table data="""
90 CSV | opcode | asm | form |
91 major.csv | 32 | lwz | D-Form |
92 major.csv | 34 | lbz | D-Form |
93 major.csv | 40 | lhz | D-Form |
94 major.csv | 42 | lha | D-Form |
95 minor_58.csv | 0 | ld | DS-Form |
96 minor_58.csv | 2 | lwa | DS-Form |
97 """]]
98
99 ## LDST-1R-2W-imm (LDSTRM-2P-1S2D)
100
101 [[!table data="""
102 CSV | opcode | asm | form |
103 major.csv | 33 | lwzu | D-Form |
104 major.csv | 35 | lbzu | D-Form |
105 major.csv | 41 | lhzu | D-Form |
106 major.csv | 43 | lhau | D-Form |
107 minor_58.csv | 1 | ldu | DS-Form |
108 """]]
109
110 ## LDST-2R-imm (LDSTRM-2P-2S)
111
112 [[!table data="""
113 CSV | opcode | asm | form |
114 major.csv | 36 | stw | D-Form |
115 major.csv | 38 | stb | D-Form |
116 major.csv | 44 | sth | D-Form |
117 minor_62.csv | 0 | std | DS-Form |
118 """]]
119
120 ## LDST-2R-1W (LDSTRM-2P-2S1D)
121
122 [[!table data="""
123 CSV | opcode | asm | form |
124 minor_31.csv | 0b0000010100 | lwarx | X-Form |
125 minor_31.csv | 0b0000010101 | ldx | X-Form |
126 minor_31.csv | 0b0000010111 | lwzx | X-Form |
127 minor_31.csv | 0b0000110100 | lbarx | X-Form |
128 minor_31.csv | 0b0001010100 | ldarx | X-Form |
129 minor_31.csv | 0b0001010111 | lbzx | X-Form |
130 minor_31.csv | 0b0001110100 | lharx | X-Form |
131 minor_31.csv | 0b0100010111 | lhzx | X-Form |
132 minor_31.csv | 0b0101010101 | lwax | X-Form |
133 minor_31.csv | 0b0101010111 | lhax | X-Form |
134 minor_31.csv | 0b1000010100 | ldbrx | X-Form |
135 minor_31.csv | 0b1000010110 | lwbrx | X-Form |
136 minor_31.csv | 0b1100010101 | lwzcix | X-Form |
137 minor_31.csv | 0b1100010110 | lhbrx | X-Form |
138 minor_31.csv | 0b1100110101 | lhzcix | X-Form |
139 minor_31.csv | 0b1101010101 | lbzcix | X-Form |
140 minor_31.csv | 0b1101110101 | ldcix | X-Form |
141 """]]
142
143 ## LDST-2R-1W-imm (LDSTRM-2P-2S1D)
144
145 [[!table data="""
146 CSV | opcode | asm | form |
147 major.csv | 37 | stwu | D-Form |
148 major.csv | 39 | stbu | D-Form |
149 major.csv | 45 | sthu | D-Form |
150 minor_62.csv | 1 | stdu | DS-Form |
151 """]]
152
153 ## LDST-2R-2W (LDSTRM-2P-2S1D)
154
155 [[!table data="""
156 CSV | opcode | asm | form |
157 minor_31.csv | 0b0000110101 | ldux | X-Form |
158 minor_31.csv | 0b0000110111 | lwzux | X-Form |
159 minor_31.csv | 0b0001110111 | lbzux | X-Form |
160 minor_31.csv | 0b0100110111 | lhzux | X-Form |
161 minor_31.csv | 0b0101110101 | lwaux | X-Form |
162 minor_31.csv | 0b0101110111 | lhaux | X-Form |
163 """]]
164
165 ## LDST-3R (LDSTRM-2P-3S)
166
167 [[!table data="""
168 CSV | opcode | asm | form |
169 minor_31.csv | 0b0010010101 | stdx | X-Form |
170 minor_31.csv | 0b0010010111 | stwx | X-Form |
171 minor_31.csv | 0b0011010111 | stbx | X-Form |
172 minor_31.csv | 0b0110010111 | sthx | X-Form |
173 minor_31.csv | 0b1010010100 | stdbrx | X-Form |
174 minor_31.csv | 0b1010010110 | stwbrx | X-Form |
175 minor_31.csv | 0b1110010101 | stwcix | X-Form |
176 minor_31.csv | 0b1110010110 | sthbrx | X-Form |
177 minor_31.csv | 0b1110110101 | sthcix | X-Form |
178 minor_31.csv | 0b1111010101 | stbcix | X-Form |
179 minor_31.csv | 0b1111110101 | stdcix | X-Form |
180 """]]
181
182 ## LDST-3R-CRo (LDSTRM-2P-3S)
183
184 [[!table data="""
185 CSV | opcode | asm | form |
186 minor_31.csv | 0b0010010110 | stwcx | X-Form |
187 minor_31.csv | 0b0011010110 | stdcx | X-Form |
188 minor_31.csv | 0b1010110110 | stbcx | X-Form |
189 minor_31.csv | 0b1011010110 | sthcx | X-Form |
190 """]]
191
192 ## LDST-3R-1W (LDSTRM-2P-2S1D)
193
194 [[!table data="""
195 CSV | opcode | asm | form |
196 minor_31.csv | 0b0010110101 | stdux | X-Form |
197 minor_31.csv | 0b0010110111 | stwux | X-Form |
198 minor_31.csv | 0b0011110111 | stbux | X-Form |
199 minor_31.csv | 0b0110110111 | sthux | X-Form |
200 """]]
201
202 ## (non-SV)
203
204 [[!table data="""
205 CSV | opcode | asm | form |
206 extra.csv | 000000---------------0100000000- | attn | NONE-Form |
207 extra.csv | 01100000000000000000000000000000 | nop | D-Form |
208 major.csv | 17 | sc | SC-Form |
209 minor_19.csv | 0b0000010010 | rfid | XL-Form |
210 minor_19.csv | 0b0010010110 | isync | XL-Form |
211 minor_19.csv | 0b0100010010 | hrfid | XL-Form |
212 minor_19_00000.csv | 0b00010 | add pcis not implemented yet | DX-Form |
213 minor_31.csv | 0b0000010110 | icbt | X-Form |
214 minor_31.csv | 0b0000110110 | dcbst | X-Form |
215 minor_31.csv | 0b0001010110 | dcbf | X-Form |
216 minor_31.csv | 0b0011110110 | dcbtst | X-Form |
217 minor_31.csv | 0b0100010110 | dcbt | X-Form |
218 minor_31.csv | 0b0111110010 | slbia | X-Form |
219 minor_31.csv | 0b1001010110 | sync | X-Form |
220 minor_31.csv | 0b1111010110 | icbi | X-Form |
221 """]]
222
223 ## imm (non-SV)
224
225 [[!table data="""
226 CSV | opcode | asm | form |
227 major.csv | 18 | b | I-Form |
228 """]]
229
230 ## CRi (non-SV)
231
232 [[!table data="""
233 CSV | opcode | asm | form |
234 minor_19.csv | 0b0000010000 | bclr | XL-Form |
235 minor_19.csv | 0b1000010000 | bcctr | XL-Form |
236 minor_19.csv | 0b1000110000 | bctar | XL-Form |
237 """]]
238
239 ## CRi (non-SV)
240
241 [[!table data="""
242 CSV | opcode | asm | form |
243 major.csv | 16 | bc | B-Form |
244 """]]
245
246 ## CRio (RM-2P-1S1D)
247
248 [[!table data="""
249 CSV | opcode | asm | form |
250 minor_19.csv | 0b0000000000 | mcrf | XL-Form |
251 minor_63l.csv | 0b000000010 | 2/0=mcrfs | -Form |
252 minor_63l.csv | 0b011000001 | 1/6=mtfsb1 | -Form |
253 minor_63l.csv | 0b011000010 | 2/6=mtfsb0 | -Form |
254 minor_63l.csv | 0b011000100 | 4/6=mtfsfi | -Form |
255 """]]
256
257 ## CR=2R1W (RM-1P-2S1D)
258
259 [[!table data="""
260 CSV | opcode | asm | form |
261 minor_19.csv | 0b0000100001 | crnor | XL-Form |
262 minor_19.csv | 0b0010000001 | crandc | XL-Form |
263 minor_19.csv | 0b0011000001 | crxor | XL-Form |
264 minor_19.csv | 0b0011100001 | crnand | XL-Form |
265 minor_19.csv | 0b0100000001 | crand | XL-Form |
266 minor_19.csv | 0b0100100001 | creqv | XL-Form |
267 minor_19.csv | 0b0110100001 | crorc | XL-Form |
268 minor_19.csv | 0b0111000001 | cror | XL-Form |
269 """]]
270
271 ## 1W (non-SV)
272
273 [[!table data="""
274 CSV | opcode | asm | form |
275 extra.csv | 000001---------------0000000011- | sim_cfg | NONE-Form |
276 minor_31.csv | 0b0001010011 | mfmsr | X-Form |
277 minor_31.csv | 0b0101010011 | mfspr | XFX-Form |
278 """]]
279
280 ## 1W-CRi (RM-2P-1S1D)
281
282 [[!table data="""
283 CSV | opcode | asm | form |
284 minor_31.csv | 0b0000010011 | mfcr/mfocrf | XFX-Form |
285 minor_31.csv | 0b0010000000 | setb | VX-Form |
286 """]]
287
288 ## 1R (non-SV)
289
290 [[!table data="""
291 CSV | opcode | asm | form |
292 minor_31.csv | 0b0010010010 | mtmsr | X-Form |
293 minor_31.csv | 0b0010110010 | mtmsrd | X-Form |
294 minor_31.csv | 0b0100010010 | tlbiel | X-Form |
295 minor_31.csv | 0b0100110010 | tlbie | X-Form |
296 minor_31.csv | 0b0111010011 | mtspr | XFX-Form |
297 """]]
298
299 ## 1R-imm (non-SV)
300
301 [[!table data="""
302 CSV | opcode | asm | form |
303 major.csv | 2 | tdi | D-Form |
304 major.csv | 3 | twi | D-Form |
305 """]]
306
307 ## 1R-CRo (RM-2P-1S1D)
308
309 [[!table data="""
310 CSV | opcode | asm | form |
311 major.csv | 10 | cmpli | D-Form |
312 major.csv | 11 | cmpi | D-Form |
313 """]]
314
315 ## 1R-CRio (RM-2P-2S1D)
316
317 [[!table data="""
318 CSV | opcode | asm | form |
319 minor_31.csv | 0b0010010000 | mtcrf/mtocrf | XFX-Form |
320 minor_31.csv | 0b1011110011 | darn | X-Form |
321 minor_63l.csv | 0b000000101 | 5/0=ftsqrt | -Form |
322 minor_63l.csv | 0b011110110 | 22/7=mtfsf | -Form |
323 """]]
324
325 ## 1R-1W (RM-2P-1S1D)
326
327 [[!table data="""
328 CSV | opcode | asm | form |
329 minor_31.csv | 0b0001101000 | neg | XO-Form |
330 minor_31.csv | 0b0001111010 | popcntb | X-Form |
331 minor_31.csv | 0b0010011010 | prtyw | X-Form |
332 minor_31.csv | 0b0010111010 | prtyd | X-Form |
333 minor_31.csv | 0b0101111010 | popcntw | X-Form |
334 minor_31.csv | 0b0111111010 | popcntd | X-Form |
335 minor_31.csv | 0b1001101000 | nego | XO-Form |
336 """]]
337
338 ## 1R-1W-imm (RM-2P-1S1D)
339
340 [[!table data="""
341 CSV | opcode | asm | form |
342 major.csv | 12 | addic | D-Form |
343 major.csv | 14 | addi | D-Form |
344 major.csv | 15 | addis | D-Form |
345 major.csv | 24 | ori | D-Form |
346 major.csv | 25 | oris | D-Form |
347 major.csv | 26 | xori | D-Form |
348 major.csv | 27 | xoris | D-Form |
349 major.csv | 8 | subfic | D-Form |
350 """]]
351
352 ## 1R-1W-CRo (RM-2P-1S1D)
353
354 [[!table data="""
355 CSV | opcode | asm | form |
356 minor_31.csv | 0b0000011010 | cntlzw | X-Form |
357 minor_31.csv | 0b0000111010 | cntlzd | X-Form |
358 minor_31.csv | 0b0011001000 | subfze | XO-Form |
359 minor_31.csv | 0b0011001010 | addze | XO-Form |
360 minor_31.csv | 0b1000011010 | cnttzw | X-Form |
361 minor_31.csv | 0b1000111010 | cnttzd | X-Form |
362 minor_31.csv | 0b1011001000 | subfzeo | XO-Form |
363 minor_31.csv | 0b1011001010 | addzeo | XO-Form |
364 minor_31.csv | 0b1110011010 | extsh | X-Form |
365 minor_31.csv | 0b1110111010 | extsb | X-Form |
366 minor_31.csv | 0b1111011010 | extsw | X-Form |
367 """]]
368
369 ## 1R-1W-CRo (RM-2P-1S1D)
370
371 [[!table data="""
372 CSV | opcode | asm | form |
373 major.csv | 13 | addic. | D-Form |
374 major.csv | 21 | rlwinm | M-Form |
375 major.csv | 28 | andi. | B-Form |
376 major.csv | 29 | andis. | B-Form |
377 major.csv | 7 | mulli | D-Form |
378 minor_30.csv | 0b0000 | rldicl | MDS-Form |
379 minor_30.csv | 0b0001 | rldicl | MDS-Form |
380 minor_30.csv | 0b0010 | rldicr | MD-Form |
381 minor_30.csv | 0b0011 | rldicr | MD-Form |
382 minor_30.csv | 0b0100 | rldic | MD-Form |
383 minor_30.csv | 0b0101 | rldic | MD-Form |
384 minor_31.csv | 0b0011101000 | subfme | XO-Form |
385 minor_31.csv | 0b0011101010 | addme | XO-Form |
386 minor_31.csv | 0b1011101000 | subfmeo | XO-Form |
387 minor_31.csv | 0b1011101010 | addmeo | XO-Form |
388 minor_31.csv | 0b1100111000 | srawi | X-Form |
389 minor_31.csv | 0b1100111010 | sradi | XS-Form |
390 minor_31.csv | 0b1100111011 | sradi | XS-Form |
391 minor_31.csv | 0b1101111010 | extswsli | XS-Form |
392 minor_31.csv | 0b1101111011 | extswsli | XS-Form |
393 """]]
394
395 ## 1R-1W-CRio (RM-2P-1S1D)
396
397 [[!table data="""
398 CSV | opcode | asm | form |
399 minor_59.csv | 0b01110 | fcfid[u]s | -Form |
400 minor_59.csv | 0b10110 | fsqrts | -Form |
401 minor_59.csv | 0b11000 | fres | -Form |
402 minor_59.csv | 0b11010 | frsqrtes | -Form |
403 minor_63h.csv | 0b0110 | fsqrt | -Form |
404 minor_63h.csv | 0b1000 | fre | -Form |
405 minor_63h.csv | 0b1010 | frsqrte | -Form |
406 minor_63l.csv | 0b011110010 | 18/7=mffsfamily | -Form |
407 minor_63l.csv | 0b100000001 | 1/8=fneg | -Form |
408 minor_63l.csv | 0b100000010 | 2/8=fmr | -Form |
409 minor_63l.csv | 0b100000100 | 4/8=fnabs | -Form |
410 minor_63l.csv | 0b100001000 | 8/8=fabs | -Form |
411 minor_63l.csv | 0b100001100 | 12/8=frin | -Form |
412 minor_63l.csv | 0b100001101 | 13/8=friz | -Form |
413 minor_63l.csv | 0b100001110 | 14/8=frip | -Form |
414 minor_63l.csv | 0b100001111 | 15/8=frim | -Form |
415 minor_63l.csv | 0b110000000 | 0/12=frsp | -Form |
416 minor_63l.csv | 0b111000000 | 0/14=fctiw | -Form |
417 minor_63l.csv | 0b111000100 | 4/14=fctiwu | -Form |
418 minor_63l.csv | 0b111011001 | 25/14=fctid | -Form |
419 minor_63l.csv | 0b111011010 | 26/14=fcfid | -Form |
420 minor_63l.csv | 0b111011101 | 29/14=fctidu | -Form |
421 minor_63l.csv | 0b111011110 | 30/14=fcfidu | -Form |
422 minor_63l.csv | 0b111100000 | 0/15=fctiwz | -Form |
423 minor_63l.csv | 0b111100100 | 4/15=fctiwuz | -Form |
424 minor_63l.csv | 0b111111001 | 25/15=fctidz | -Form |
425 minor_63l.csv | 0b111111101 | 29/15=fctiduz | -Form |
426 """]]
427
428 ## 2R (non-SV)
429
430 [[!table data="""
431 CSV | opcode | asm | form |
432 minor_31.csv | 0b0000000100 | tw | X-Form |
433 minor_31.csv | 0b0001000100 | td | X-Form |
434 minor_31.csv | 0b1111110110 | dcbz | X-Form |
435 """]]
436
437 ## 2R-CRo (RM-1P-2S1D)
438
439 [[!table data="""
440 CSV | opcode | asm | form |
441 minor_31.csv | 0b0000000000 | cmp | X-Form |
442 minor_31.csv | 0b0000100000 | cmpl | X-Form |
443 minor_31.csv | 0b0011000000 | cmprb | X-Form |
444 minor_31.csv | 0b0011100000 | cmpeqb | X-Form |
445 """]]
446
447 ## 2R-CRio (RM-1P-2S1D)
448
449 [[!table data="""
450 CSV | opcode | asm | form |
451 minor_63l.csv | 0b000000000 | 0/0=fcmpu | -Form |
452 minor_63l.csv | 0b000000001 | 1/0=fcmpo | -Form |
453 minor_63l.csv | 0b000000100 | 4/0=ftdiv | -Form |
454 """]]
455
456 ## 2R-1W (RM-1P-2S1D)
457
458 [[!table data="""
459 CSV | opcode | asm | form |
460 minor_31.csv | 0b0011111100 | bpermd | X-Form |
461 minor_31.csv | 0b0100001001 | modud | X-Form |
462 minor_31.csv | 0b0100001011 | moduw | X-Form |
463 minor_31.csv | 0b0111111100 | cmpb | X-Form |
464 minor_31.csv | 0b1100001001 | modsd | X-Form |
465 minor_31.csv | 0b1100001011 | modsw | X-Form |
466 """]]
467
468 ## 2R-1W-CRo (RM-1P-2S1D)
469
470 [[!table data="""
471 CSV | opcode | asm | form |
472 major.csv | 23 | rlwnm | M-Form |
473 minor_30.csv | 0b1000 | rldcl | MD-Form |
474 minor_30.csv | 0b1001 | rldcr | MD-Form |
475 minor_31.csv | 0b0000001000 | subfc | XO-Form |
476 minor_31.csv | 0b0000001001 | mulhdu | XO-Form |
477 minor_31.csv | 0b0000001010 | addc | XO-Form |
478 minor_31.csv | 0b0000001011 | mulhwu | XO-Form |
479 minor_31.csv | 0b0000011000 | slw | X-Form |
480 minor_31.csv | 0b0000011011 | sld | X-Form |
481 minor_31.csv | 0b0000011100 | and | X-Form |
482 minor_31.csv | 0b0000101000 | subf | XO-Form |
483 minor_31.csv | 0b0000111100 | andc | X-Form |
484 minor_31.csv | 0b0001001001 | mulhd | XO-Form |
485 minor_31.csv | 0b0001001011 | mulhw | XO-Form |
486 minor_31.csv | 0b0001111100 | nor | X-Form |
487 minor_31.csv | 0b0010001000 | subfe | XO-Form |
488 minor_31.csv | 0b0010001010 | adde | XO-Form |
489 minor_31.csv | 0b0011101001 | mulld | XO-Form |
490 minor_31.csv | 0b0011101011 | mullw | XO-Form |
491 minor_31.csv | 0b0100001010 | add | XO-Form |
492 minor_31.csv | 0b0100011100 | eqv | X-Form |
493 minor_31.csv | 0b0100111100 | xor | X-Form |
494 minor_31.csv | 0b0110001001 | divdeu | XO-Form |
495 minor_31.csv | 0b0110001011 | divweu | XO-Form |
496 minor_31.csv | 0b0110011100 | orc | X-Form |
497 minor_31.csv | 0b0110101001 | divde | XO-Form |
498 minor_31.csv | 0b0110101011 | divwe | XO-Form |
499 minor_31.csv | 0b0110111100 | or | X-Form |
500 minor_31.csv | 0b0111001001 | divdu | XO-Form |
501 minor_31.csv | 0b0111001011 | divwu | XO-Form |
502 minor_31.csv | 0b0111011100 | nand | X-Form |
503 minor_31.csv | 0b0111101001 | divd | XO-Form |
504 minor_31.csv | 0b0111101011 | divw | XO-Form |
505 minor_31.csv | 0b1000001000 | subfco | XO-Form |
506 minor_31.csv | 0b1000001001 | mulhdu | XO-Form |
507 minor_31.csv | 0b1000001010 | addco | XO-Form |
508 minor_31.csv | 0b1000001011 | mulhwu | XO-Form |
509 minor_31.csv | 0b1000011000 | srw | X-Form |
510 minor_31.csv | 0b1000011011 | srd | X-Form |
511 minor_31.csv | 0b1000101000 | subfo | XO-Form |
512 minor_31.csv | 0b1001001001 | mulhd | XO-Form |
513 minor_31.csv | 0b1001001011 | mulhw | XO-Form |
514 minor_31.csv | 0b1010001000 | subfeo | XO-Form |
515 minor_31.csv | 0b1010001010 | addeo | XO-Form |
516 minor_31.csv | 0b1011101001 | mulldo | XO-Form |
517 minor_31.csv | 0b1011101011 | mullwo | XO-Form |
518 minor_31.csv | 0b1100001010 | addo | XO-Form |
519 minor_31.csv | 0b1100011000 | sraw | X-Form |
520 minor_31.csv | 0b1100011010 | srad | X-Form |
521 minor_31.csv | 0b1110001001 | divdeuo | XO-Form |
522 minor_31.csv | 0b1110001011 | divweuo | XO-Form |
523 minor_31.csv | 0b1110101001 | divdeo | XO-Form |
524 minor_31.csv | 0b1110101011 | divweo | XO-Form |
525 minor_31.csv | 0b1111001001 | divduo | XO-Form |
526 minor_31.csv | 0b1111001011 | divwuo | XO-Form |
527 minor_31.csv | 0b1111101001 | divdo | XO-Form |
528 minor_31.csv | 0b1111101011 | divwo | XO-Form |
529 """]]
530
531 ## 2R-1W-CRo (RM-1P-2S1D)
532
533 [[!table data="""
534 CSV | opcode | asm | form |
535 major.csv | 20 | rlwimi | M-Form |
536 minor_30.csv | 0b0110 | rldimi | MD-Form |
537 minor_30.csv | 0b0111 | rldimi | MD-Form |
538 """]]
539
540 ## 2R-1W-CRi (RM-1P-3S1D)
541
542 [[!table data="""
543 CSV | opcode | asm | form |
544 minor_31.csv | 0b0000001111 | isel | A-Form |
545 minor_31.csv | 0b0000101111 | isel | A-Form |
546 minor_31.csv | 0b0001001111 | isel | A-Form |
547 minor_31.csv | 0b0001101111 | isel | A-Form |
548 minor_31.csv | 0b0010001111 | isel | A-Form |
549 minor_31.csv | 0b0010101111 | isel | A-Form |
550 minor_31.csv | 0b0011001111 | isel | A-Form |
551 minor_31.csv | 0b0011101111 | isel | A-Form |
552 minor_31.csv | 0b0100001111 | isel | A-Form |
553 minor_31.csv | 0b0100101111 | isel | A-Form |
554 minor_31.csv | 0b0101001111 | isel | A-Form |
555 minor_31.csv | 0b0101101111 | isel | A-Form |
556 minor_31.csv | 0b0110001111 | isel | A-Form |
557 minor_31.csv | 0b0110101111 | isel | A-Form |
558 minor_31.csv | 0b0111001111 | isel | A-Form |
559 minor_31.csv | 0b0111101111 | isel | A-Form |
560 minor_31.csv | 0b1000001111 | isel | A-Form |
561 minor_31.csv | 0b1000101111 | isel | A-Form |
562 minor_31.csv | 0b1001001111 | isel | A-Form |
563 minor_31.csv | 0b1001101111 | isel | A-Form |
564 minor_31.csv | 0b1010001111 | isel | A-Form |
565 minor_31.csv | 0b1010101111 | isel | A-Form |
566 minor_31.csv | 0b1011001111 | isel | A-Form |
567 minor_31.csv | 0b1011101111 | isel | A-Form |
568 minor_31.csv | 0b1100001111 | isel | A-Form |
569 minor_31.csv | 0b1100101111 | isel | A-Form |
570 minor_31.csv | 0b1101001111 | isel | A-Form |
571 minor_31.csv | 0b1101101111 | isel | A-Form |
572 minor_31.csv | 0b1110001111 | isel | A-Form |
573 minor_31.csv | 0b1110101111 | isel | A-Form |
574 minor_31.csv | 0b1111001111 | isel | A-Form |
575 minor_31.csv | 0b1111101111 | isel | A-Form |
576 """]]
577
578 ## 2R-1W-CRio (RM-1P-2S1D)
579
580 [[!table data="""
581 CSV | opcode | asm | form |
582 minor_59.csv | 0b10010 | fdivs | -Form |
583 minor_59.csv | 0b10100 | fsubs | -Form |
584 minor_59.csv | 0b10101 | fadds | -Form |
585 minor_59.csv | 0b11001 | fmuls | -Form |
586 minor_63h.csv | 0b0010 | fdiv | -Form |
587 minor_63h.csv | 0b0100 | fsub | -Form |
588 minor_63h.csv | 0b0101 | fadd | -Form |
589 minor_63h.csv | 0b1001 | fmul | -Form |
590 minor_63l.csv | 0b011011010 | 26/6=fmrgow | -Form |
591 minor_63l.csv | 0b011011110 | 30/6=fmrgew | -Form |
592 minor_63l.csv | 0b100000000 | 0/8=fcpsgn | -Form |
593 """]]
594
595 ## 3R-1W-CRio (RM-1P-3S1D)
596
597 [[!table data="""
598 CSV | opcode | asm | form |
599 minor_59.csv | 0b11100 | fmsubs | -Form |
600 minor_59.csv | 0b11101 | fmadds | -Form |
601 minor_59.csv | 0b11110 | fnmsubs | -Form |
602 minor_59.csv | 0b11111 | fnmadds | -Form |
603 minor_63h.csv | 0b0111 | fsel | -Form |
604 minor_63h.csv | 0b1100 | fmsub | -Form |
605 minor_63h.csv | 0b1101 | fmadd | -Form |
606 minor_63h.csv | 0b1110 | fnmsub | -Form |
607 minor_63h.csv | 0b1111 | fnmadd | -Form |
608 """]]
609
610 # svp64 remaps
611 ## LDST-1R-1W-imm (LDSTRM-2P-1S1D)
612
613 [[!table data="""
614 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
615 lwz | 2P | EXTRA3 | d:RT | s:RA | | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
616 lbz | 2P | EXTRA3 | d:RT | s:RA | | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
617 lhz | 2P | EXTRA3 | d:RT | s:RA | | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
618 lha | 2P | EXTRA3 | d:RT | s:RA | | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
619 ld | 2P | EXTRA3 | d:RT | s:RA | | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
620 lwa | 2P | EXTRA3 | d:RT | s:RA | | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
621 """]]
622
623 ## LDST-1R-2W-imm (LDSTRM-2P-1S2D)
624
625 [[!table data="""
626 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
627 lwzu | 2P | EXTRA2 | d:RT | s:RA | d:RA | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
628 lbzu | 2P | EXTRA2 | d:RT | s:RA | d:RA | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
629 lhzu | 2P | EXTRA2 | d:RT | s:RA | d:RA | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
630 lhau | 2P | EXTRA2 | d:RT | s:RA | d:RA | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
631 ldu | 2P | EXTRA2 | d:RT | s:RA | d:RA | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
632 """]]
633
634 ## LDST-2R-imm (LDSTRM-2P-2S)
635
636 [[!table data="""
637 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
638 stw | 2P | EXTRA3 | d:RS | s:RA | | | RA_OR_ZERO | | RS | NONE | NONE | NONE |
639 stb | 2P | EXTRA3 | d:RS | s:RA | | | RA_OR_ZERO | | RS | NONE | NONE | NONE |
640 sth | 2P | EXTRA3 | d:RS | s:RA | | | RA_OR_ZERO | | RS | NONE | NONE | NONE |
641 std | 2P | EXTRA3 | d:RS | s:RA | | | RA_OR_ZERO | | RS | NONE | NONE | NONE |
642 """]]
643
644 ## LDST-2R-1W (LDSTRM-2P-2S1D)
645
646 [[!table data="""
647 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
648 lwarx | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
649 ldx | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
650 lwzx | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
651 lbarx | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
652 ldarx | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
653 lbzx | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
654 lharx | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
655 lhzx | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
656 lwax | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
657 lhax | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
658 ldbrx | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
659 lwbrx | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
660 lwzcix | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
661 lhbrx | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
662 lhzcix | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
663 lbzcix | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
664 ldcix | 2P | EXTRA2 | d:RT | s:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
665 """]]
666
667 ## LDST-2R-1W-imm (LDSTRM-2P-2S1D)
668
669 [[!table data="""
670 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
671 stwu | 2P | EXTRA2 | d:RT | d:RA | s:RB | | RA_OR_ZERO | | RS | NONE | NONE | NONE |
672 stbu | 2P | EXTRA2 | d:RT | d:RA | s:RB | | RA_OR_ZERO | | RS | NONE | NONE | NONE |
673 sthu | 2P | EXTRA2 | d:RT | d:RA | s:RB | | RA_OR_ZERO | | RS | NONE | NONE | NONE |
674 stdu | 2P | EXTRA2 | d:RT | d:RA | s:RB | | RA_OR_ZERO | | RS | NONE | NONE | NONE |
675 """]]
676
677 ## LDST-2R-2W (LDSTRM-2P-2S1D)
678
679 [[!table data="""
680 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
681 ldux | 2P | EXTRA2 | d:RT | d:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
682 lwzux | 2P | EXTRA2 | d:RT | d:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
683 lbzux | 2P | EXTRA2 | d:RT | d:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
684 lhzux | 2P | EXTRA2 | d:RT | d:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
685 lwaux | 2P | EXTRA2 | d:RT | d:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
686 lhaux | 2P | EXTRA2 | d:RT | d:RA | s:RB | | RA_OR_ZERO | RB | NONE | RT | NONE | NONE |
687 """]]
688
689 ## LDST-3R (LDSTRM-2P-3S)
690
691 [[!table data="""
692 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
693 stdx | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
694 stwx | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
695 stbx | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
696 sthx | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
697 stdbrx | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
698 stwbrx | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
699 stwcix | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
700 sthbrx | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
701 sthcix | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
702 stbcix | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
703 stdcix | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
704 """]]
705
706 ## LDST-3R-CRo (LDSTRM-2P-3S)
707
708 [[!table data="""
709 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
710 stwcx | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | CR0 |
711 stdcx | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | CR0 |
712 stbcx | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | CR0 |
713 sthcx | 2P | EXTRA2 | s:RS,d:CR0 | s:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | CR0 |
714 """]]
715
716 ## LDST-3R-1W (LDSTRM-2P-2S1D)
717
718 [[!table data="""
719 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
720 stdux | 2P | EXTRA2 | d:RS | d:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
721 stwux | 2P | EXTRA2 | d:RS | d:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
722 stbux | 2P | EXTRA2 | d:RS | d:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
723 sthux | 2P | EXTRA2 | d:RS | d:RA | s:RB | | RA_OR_ZERO | RB | RS | NONE | NONE | NONE |
724 """]]
725
726 ## CRio (RM-2P-1S1D)
727
728 [[!table data="""
729 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
730 mcrf | 2P | EXTRA3 | d:BF | s:BFA | | | NONE | NONE | NONE | NONE | BFA | BF |
731 2/0=mcrfs | 2P | EXTRA3 | TODO | | | | NONE | NONE | NONE | NONE | 0 | 1 |
732 1/6=mtfsb1 | 2P | EXTRA3 | TODO | | | | NONE | NONE | NONE | NONE | 0 | 0 |
733 2/6=mtfsb0 | 2P | EXTRA3 | TODO | | | | NONE | NONE | NONE | NONE | 0 | 0 |
734 4/6=mtfsfi | 2P | EXTRA3 | TODO | | | | NONE | NONE | NONE | NONE | 0 | 0 |
735 """]]
736
737 ## CR=2R1W (RM-1P-2S1D)
738
739 [[!table data="""
740 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
741 crnor | 1P | EXTRA3 | d:BT | s:BA | s:BB | | NONE | NONE | NONE | NONE | BA_BB | BT |
742 crandc | 1P | EXTRA3 | d:BT | s:BA | s:BB | | NONE | NONE | NONE | NONE | BA_BB | BT |
743 crxor | 1P | EXTRA3 | d:BT | s:BA | s:BB | | NONE | NONE | NONE | NONE | BA_BB | BT |
744 crnand | 1P | EXTRA3 | d:BT | s:BA | s:BB | | NONE | NONE | NONE | NONE | BA_BB | BT |
745 crand | 1P | EXTRA3 | d:BT | s:BA | s:BB | | NONE | NONE | NONE | NONE | BA_BB | BT |
746 creqv | 1P | EXTRA3 | d:BT | s:BA | s:BB | | NONE | NONE | NONE | NONE | BA_BB | BT |
747 crorc | 1P | EXTRA3 | d:BT | s:BA | s:BB | | NONE | NONE | NONE | NONE | BA_BB | BT |
748 cror | 1P | EXTRA3 | d:BT | s:BA | s:BB | | NONE | NONE | NONE | NONE | BA_BB | BT |
749 """]]
750
751 ## 1W-CRi (RM-2P-1S1D)
752
753 [[!table data="""
754 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
755 mfcr/mfocrf | 2P | EXTRA3 | d:RT | s:CR | | | NONE | NONE | NONE | RT | WHOLE_REG | NONE |
756 setb | 2P | EXTRA3 | d:RT | s:BFA | | | NONE | NONE | NONE | RT | BFA | NONE |
757 """]]
758
759 ## 1R-CRo (RM-2P-1S1D)
760
761 [[!table data="""
762 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
763 cmpli | 2P | EXTRA3 | d:BF | s:RA | | | RA | | NONE | NONE | NONE | BF |
764 cmpi | 2P | EXTRA3 | d:BF | s:RA | | | RA | | NONE | NONE | NONE | BF |
765 """]]
766
767 ## 1R-CRio (RM-2P-2S1D)
768
769 [[!table data="""
770 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
771 mtcrf/mtocrf | 2P | EXTRA2 | d:CR | s:RS | s:CR | | RS | NONE | NONE | NONE | WHOLE_REG | WHOLE_REG |
772 darn | 2P | EXTRA2 | TODO | | | | | | RT | | | |
773 5/0=ftsqrt | 2P | EXTRA2 | TODO | | | | NONE | FRB | NONE | NONE | 0 | 1 |
774 22/7=mtfsf | 2P | EXTRA2 | TODO | | | | NONE | FRB | NONE | NONE | 0 | 0 |
775 """]]
776
777 ## 1R-1W (RM-2P-1S1D)
778
779 [[!table data="""
780 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
781 neg | 2P | EXTRA3 | d:RT | s:RA | | | RA | NONE | NONE | RT | NONE | NONE |
782 popcntb | 2P | EXTRA3 | d:RA | s:RS | | | RS | NONE | NONE | RA | NONE | NONE |
783 prtyw | 2P | EXTRA3 | d:RA | s:RS | | | RS | NONE | NONE | RA | NONE | NONE |
784 prtyd | 2P | EXTRA3 | d:RA | s:RS | | | RS | NONE | NONE | RA | NONE | NONE |
785 popcntw | 2P | EXTRA3 | d:RA | s:RS | | | RS | NONE | NONE | RA | NONE | NONE |
786 popcntd | 2P | EXTRA3 | d:RA | s:RS | | | RS | NONE | NONE | RA | NONE | NONE |
787 nego | 2P | EXTRA3 | d:RT | s:RA | | | RA | NONE | NONE | RT | NONE | NONE |
788 """]]
789
790 ## 1R-1W-imm (RM-2P-1S1D)
791
792 [[!table data="""
793 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
794 addic | 2P | EXTRA3 | d:RT | s:RA | | | RA | | NONE | RT | NONE | NONE |
795 addi | 2P | EXTRA3 | d:RT | s:RA | | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
796 addis | 2P | EXTRA3 | d:RT | s:RA | | | RA_OR_ZERO | | NONE | RT | NONE | NONE |
797 ori | 2P | EXTRA3 | d:RA | s:RS | | | RS | | NONE | RA | NONE | NONE |
798 oris | 2P | EXTRA3 | d:RA | s:RS | | | RS | | NONE | RA | NONE | NONE |
799 xori | 2P | EXTRA3 | d:RA | s:RS | | | RS | | NONE | RA | NONE | NONE |
800 xoris | 2P | EXTRA3 | d:RA | s:RS | | | RS | | NONE | RA | NONE | NONE |
801 subfic | 2P | EXTRA3 | d:RT | s:RA | | | RA | | NONE | RT | NONE | NONE |
802 """]]
803
804 ## 1R-1W-CRo (RM-2P-1S1D)
805
806 [[!table data="""
807 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
808 cntlzw | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | RS | NONE | NONE | RA | NONE | CR0 |
809 cntlzd | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | RS | NONE | NONE | RA | NONE | CR0 |
810 subfze | 2P | EXTRA3 | d:RT,d:CR0 | s:RA | | | RA | NONE | NONE | RT | NONE | CR0 |
811 addze | 2P | EXTRA3 | d:RT,d:CR0 | s:RA | | | RA | NONE | NONE | RT | NONE | CR0 |
812 cnttzw | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | RS | NONE | NONE | RA | NONE | CR0 |
813 cnttzd | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | RS | NONE | NONE | RA | NONE | CR0 |
814 subfzeo | 2P | EXTRA3 | d:RT,d:CR0 | s:RA | | | RA | NONE | NONE | RT | NONE | CR0 |
815 addzeo | 2P | EXTRA3 | d:RT,d:CR0 | s:RA | | | RA | NONE | NONE | RT | NONE | CR0 |
816 extsh | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | RS | NONE | NONE | RA | NONE | CR0 |
817 extsb | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | RS | NONE | NONE | RA | NONE | CR0 |
818 extsw | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | RS | NONE | NONE | RA | NONE | CR0 |
819 """]]
820
821 ## 1R-1W-CRo (RM-2P-1S1D)
822
823 [[!table data="""
824 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
825 addic. | 2P | EXTRA3 | d:RT,d:CR0 | s:RA | | | RA | | NONE | RT | NONE | CR0 |
826 rlwinm | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
827 andi. | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | RS | | NONE | RA | NONE | CR0 |
828 andis. | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | RS | | NONE | RA | NONE | CR0 |
829 mulli | 2P | EXTRA3 | d:RT,d:CR0 | s:RA | | | RA | | NONE | RT | NONE | CR0 |
830 rldicl | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
831 rldicl | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
832 rldicr | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
833 rldicr | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
834 rldic | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
835 rldic | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
836 subfme | 2P | EXTRA3 | d:RT,d:CR0 | s:RA | | | RA | | NONE | RT | NONE | CR0 |
837 addme | 2P | EXTRA3 | d:RT,d:CR0 | s:RA | | | RA | | NONE | RT | NONE | CR0 |
838 subfmeo | 2P | EXTRA3 | d:RT,d:CR0 | s:RA | | | RA | | NONE | RT | NONE | CR0 |
839 addmeo | 2P | EXTRA3 | d:RT,d:CR0 | s:RA | | | RA | | NONE | RT | NONE | CR0 |
840 srawi | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
841 sradi | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
842 sradi | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
843 extswsli | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
844 extswsli | 2P | EXTRA3 | d:RA,d:CR0 | s:RS | | | NONE | | RS | RA | NONE | CR0 |
845 """]]
846
847 ## 1R-1W-CRio (RM-2P-1S1D)
848
849 [[!table data="""
850 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
851 fcfid[u]s | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
852 fsqrts | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
853 fres | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
854 frsqrtes | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
855 fsqrt | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
856 fre | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
857 frsqrte | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
858 18/7=mffsfamily | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
859 1/8=fneg | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
860 2/8=fmr | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
861 4/8=fnabs | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
862 8/8=fabs | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
863 12/8=frin | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
864 13/8=friz | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
865 14/8=frip | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
866 15/8=frim | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
867 0/12=frsp | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
868 0/14=fctiw | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
869 4/14=fctiwu | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
870 25/14=fctid | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
871 26/14=fcfid | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
872 29/14=fctidu | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
873 30/14=fcfidu | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
874 0/15=fctiwz | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
875 4/15=fctiwuz | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
876 25/15=fctidz | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
877 29/15=fctiduz | 2P | EXTRA3 | TODO | | | | NONE | FRB | NONE | FRT | 0 | 0 |
878 """]]
879
880 ## 2R-CRo (RM-1P-2S1D)
881
882 [[!table data="""
883 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
884 cmp | 1P | EXTRA3 | d:BF | s:RA | s:RB | | RA | RB | NONE | NONE | NONE | BF |
885 cmpl | 1P | EXTRA3 | d:BF | s:RA | s:RB | | RA | RB | NONE | NONE | NONE | BF |
886 cmprb | 1P | EXTRA3 | d:BF | s:RA | s:RB | | RA | RB | NONE | NONE | NONE | BF |
887 cmpeqb | 1P | EXTRA3 | d:BF | s:RA | s:RB | | RA | RB | NONE | NONE | NONE | BF |
888 """]]
889
890 ## 2R-CRio (RM-1P-2S1D)
891
892 [[!table data="""
893 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
894 0/0=fcmpu | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | NONE | 0 | 1 |
895 1/0=fcmpo | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | NONE | 0 | 1 |
896 4/0=ftdiv | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | NONE | 0 | 1 |
897 """]]
898
899 ## 2R-1W (RM-1P-2S1D)
900
901 [[!table data="""
902 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
903 bpermd | 1P | EXTRA3 | d:RA | s:RS | s:RB | | RS | RB | NONE | RA | NONE | NONE |
904 modud | 1P | EXTRA3 | d:RT | s:RA | s:RB | | RA | RB | NONE | RT | NONE | NONE |
905 moduw | 1P | EXTRA3 | d:RT | s:RA | s:RB | | RA | RB | NONE | RT | NONE | NONE |
906 cmpb | 1P | EXTRA3 | d:RA | s:RS | s:RB | | RS | RB | NONE | RA | NONE | NONE |
907 modsd | 1P | EXTRA3 | d:RT | s:RA | s:RB | | RA | RB | NONE | RT | NONE | NONE |
908 modsw | 1P | EXTRA3 | d:RT | s:RA | s:RB | | RA | RB | NONE | RT | NONE | NONE |
909 """]]
910
911 ## 2R-1W-CRo (RM-1P-2S1D)
912
913 [[!table data="""
914 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
915 rlwnm | 1P | EXTRA3 | d:RA,d:CR0 | s:RB | s:RS | | NONE | RB | RS | RA | NONE | CR0 |
916 rldcl | 1P | EXTRA3 | d:RA,d:CR0 | s:RB | s:RS | | NONE | RB | RS | RA | NONE | CR0 |
917 rldcr | 1P | EXTRA3 | d:RA,d:CR0 | s:RB | s:RS | | NONE | RB | RS | RA | NONE | CR0 |
918 subfc | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
919 mulhdu | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
920 addc | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
921 mulhwu | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
922 slw | 1P | EXTRA3 | d:RA,d:CR0 | s:RB | s:RS | | NONE | RB | RS | RA | NONE | CR0 |
923 sld | 1P | EXTRA3 | d:RA,d:CR0 | s:RB | s:RS | | NONE | RB | RS | RA | NONE | CR0 |
924 and | 1P | EXTRA3 | TODO | | | | RS | RB | NONE | RA | NONE | CR0 |
925 subf | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
926 andc | 1P | EXTRA3 | TODO | | | | RS | RB | NONE | RA | NONE | CR0 |
927 mulhd | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
928 mulhw | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
929 nor | 1P | EXTRA3 | TODO | | | | RS | RB | NONE | RA | NONE | CR0 |
930 subfe | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
931 adde | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
932 mulld | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
933 mullw | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
934 add | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
935 eqv | 1P | EXTRA3 | TODO | | | | RS | RB | NONE | RA | NONE | CR0 |
936 xor | 1P | EXTRA3 | TODO | | | | RS | RB | NONE | RA | NONE | CR0 |
937 divdeu | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
938 divweu | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
939 orc | 1P | EXTRA3 | TODO | | | | RS | RB | NONE | RA | NONE | CR0 |
940 divde | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
941 divwe | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
942 or | 1P | EXTRA3 | TODO | | | | RS | RB | NONE | RA | NONE | CR0 |
943 divdu | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
944 divwu | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
945 nand | 1P | EXTRA3 | TODO | | | | RS | RB | NONE | RA | NONE | CR0 |
946 divd | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
947 divw | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
948 subfco | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
949 mulhdu | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
950 addco | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
951 mulhwu | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
952 srw | 1P | EXTRA3 | d:RA,d:CR0 | s:RB | s:RS | | NONE | RB | RS | RA | NONE | CR0 |
953 srd | 1P | EXTRA3 | d:RA,d:CR0 | s:RB | s:RS | | NONE | RB | RS | RA | NONE | CR0 |
954 subfo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
955 mulhd | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
956 mulhw | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
957 subfeo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
958 addeo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
959 mulldo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
960 mullwo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
961 addo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
962 sraw | 1P | EXTRA3 | d:RA,d:CR0 | s:RB | s:RS | | NONE | RB | RS | RA | NONE | CR0 |
963 srad | 1P | EXTRA3 | d:RA,d:CR0 | s:RB | s:RS | | NONE | RB | RS | RA | NONE | CR0 |
964 divdeuo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
965 divweuo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
966 divdeo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
967 divweo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
968 divduo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
969 divwuo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
970 divdo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
971 divwo | 1P | EXTRA3 | d:RT,d:CR0 | s:RA | s:RB | | RA | RB | NONE | RT | NONE | CR0 |
972 """]]
973
974 ## 2R-1W-CRo (RM-1P-2S1D)
975
976 [[!table data="""
977 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
978 rlwimi | 1P | EXTRA3 | d:RA,d:CR0 | s:RA | s:RS | | RA | | RS | RA | NONE | CR0 |
979 rldimi | 1P | EXTRA3 | d:RA,d:CR0 | s:RA | s:RS | | RA | | RS | RA | NONE | CR0 |
980 rldimi | 1P | EXTRA3 | d:RA,d:CR0 | s:RA | s:RS | | RA | | RS | RA | NONE | CR0 |
981 """]]
982
983 ## 2R-1W-CRi (RM-1P-3S1D)
984
985 [[!table data="""
986 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
987 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
988 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
989 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
990 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
991 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
992 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
993 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
994 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
995 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
996 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
997 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
998 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
999 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1000 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1001 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1002 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1003 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1004 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1005 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1006 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1007 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1008 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1009 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1010 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1011 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1012 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1013 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1014 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1015 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1016 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1017 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1018 isel | 1P | EXTRA2 | d:RT | s:RA | s:RB | s:BC | RA_OR_ZERO | RB | NONE | RT | BC | NONE |
1019 """]]
1020
1021 ## 2R-1W-CRio (RM-1P-2S1D)
1022
1023 [[!table data="""
1024 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
1025 fdivs | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | FRT | 0 | 0 |
1026 fsubs | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | FRT | 0 | 0 |
1027 fadds | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | FRT | 0 | 0 |
1028 fmuls | 1P | EXTRA3 | TODO | | | | FRA | NONE | FRC | FRT | 0 | 0 |
1029 fdiv | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | FRT | 0 | 0 |
1030 fsub | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | FRT | 0 | 0 |
1031 fadd | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | FRT | 0 | 0 |
1032 fmul | 1P | EXTRA3 | TODO | | | | FRA | NONE | FRC | FRT | 0 | 0 |
1033 26/6=fmrgow | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | FRT | 0 | 0 |
1034 30/6=fmrgew | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | FRT | 0 | 0 |
1035 0/8=fcpsgn | 1P | EXTRA3 | TODO | | | | FRA | FRB | NONE | FRT | 0 | 0 |
1036 """]]
1037
1038 ## 3R-1W-CRio (RM-1P-3S1D)
1039
1040 [[!table data="""
1041 insn | Ptype | Etype | 0 | 1 | 2 | 3 |
1042 fmsubs | 1P | EXTRA2 | d:FRT,d:CR1 | s:FRA | s:FRB | s:FRC | FRA | FRB | FRC | FRT | 0 | 0 |
1043 fmadds | 1P | EXTRA2 | d:FRT,d:CR1 | s:FRA | s:FRB | s:FRC | FRA | FRB | FRC | FRT | 0 | 0 |
1044 fnmsubs | 1P | EXTRA2 | d:FRT,d:CR1 | s:FRA | s:FRB | s:FRC | FRA | FRB | FRC | FRT | 0 | 0 |
1045 fnmadds | 1P | EXTRA2 | d:FRT,d:CR1 | s:FRA | s:FRB | s:FRC | FRA | FRB | FRC | FRT | 0 | 0 |
1046 fsel | 1P | EXTRA2 | d:FRT,d:CR1 | s:FRA | s:FRB | s:FRC | FRA | FRB | FRC | FRT | 0 | 0 |
1047 fmsub | 1P | EXTRA2 | d:FRT,d:CR1 | s:FRA | s:FRB | s:FRC | FRA | FRB | FRC | FRT | 0 | 0 |
1048 fmadd | 1P | EXTRA2 | d:FRT,d:CR1 | s:FRA | s:FRB | s:FRC | FRA | FRB | FRC | FRT | 0 | 0 |
1049 fnmsub | 1P | EXTRA2 | d:FRT,d:CR1 | s:FRA | s:FRB | s:FRC | FRA | FRB | FRC | FRT | 0 | 0 |
1050 fnmadd | 1P | EXTRA2 | d:FRT,d:CR1 | s:FRA | s:FRB | s:FRC | FRA | FRB | FRC | FRT | 0 | 0 |
1051 """]]
1052