| 16-bit mode | | 10-bit mode |
| 0 | 1 | 234 | | 567.8 | 9 ab | c de | f |
+ | - | - | --- | | ----- | ----- | ------ | - |
| 0 | 0 000 | | 000.0 | 0 00 | 0 00 | 0 | illeg
| 0 | 0 000 | | 000.0 | 0 00 | 0 00 | 1 | nop
16 bit mode only:
+ | - | - | --- | | ----- | ----- | ------ | - |
| 1 | 0 000 | | 000.0 | 0 00 | 0 00 | 0 | nop
| 1 | 1 000 | | 000.0 | 0 00 | 0 00 | 0 | attn
| 1 | nonzero | | 000.0 | 0 00 | 0 00 | 0 | TBD
| 16-bit mode | | 10-bit mode |
| 0 | 1 | 234 | | 567.8 | 9 ab | c de | f |
+ | - | - | --- | | ----- | ----- | ------ | - |
| N | offs2 | | 000.LK | offs!=0 | M | b, bl
| 1 | offs2 | | 000.LK | BI | BO1 oo | 1 | bc, bcl
| N | BO3 BI3 | | 001.0 | LK BI | BO | M | bclr, bclrl
* 10-bit, ignore bits 0-4 (used by EXTNNN=Compressed)
* 16-bit: note that bit 1==0 (sub-sub-encoding)
- | 16-bit mode | | 10-bit mode |
- | 0 | 1 | 2 3 4 | | 567.8 | 9ab | c d e | f |
- | N | | RT | | 011.1 | RB | RA!=0 | M | fsub.
- | N | 0 | RT | | 110.0 | RB | RA!=0 | M | fadd
- | N | 0 | RT | | 110.1 | RB | RA!=0 | M | fmul
- | N | 0 | RT | | 011.1 | RB | 0 0 0 | M | fneg.
- | N | 0 | RT | | 110.0 | RB | 0 0 0 | M |
- | N | 0 | RT | | 110.1 | RB | 0 0 0 | M |
+ | 16-bit mode | | 10-bit mode |
+ | 0 | 1 | 234 | | 567.8 | 9ab | c d e | f |
+ | - | - | --- | | ----- | --- | ----- | - |
+ | N | | RT | | 011.1 | RB | RA!=0 | M | fsub.
+ | N | 0 | RT | | 110.0 | RB | RA!=0 | M | fadd
+ | N | 0 | RT | | 110.1 | RB | RA!=0 | M | fmul
+ | N | 0 | RT | | 011.1 | RB | 0 0 0 | M | fneg.
+ | N | 0 | RT | | 110.0 | RB | 0 0 0 | M |
+ | N | 0 | RT | | 110.1 | RB | 0 0 0 | M |
16-bit mode only (note that bit 1 == 1):
- | 0 | 1 | 2 3 4 | | 567.8 | 9ab | c d e | f |
- | N | 1 | RT | | 011.1 | RB | RA!=0 | 0 |
- | N | 1 | RT | | 110.0 | RB | RA!=0 | 0 |
- | N | 1 | RT | | 110.1 | RB | RA!=0 | 0 | fdiv
- | N | 1 | RT | | 011.1 | RB | 0 0 0 | 0 | fabs.
- | N | 1 | RT | | 110.0 | RB | 0 0 0 | 0 | fmr.
- | N | 1 | RT | | 110.1 | RB | 0 0 0 | 0 |
+ | 0 | 1 | 234 | | 567.8 | 9ab | c d e | f |
+ | - | - | --- | | ----- | --- | ----- | - |
+ | N | 1 | RT | | 011.1 | RB | RA!=0 | 0 |
+ | N | 1 | RT | | 110.0 | RB | RA!=0 | 0 |
+ | N | 1 | RT | | 110.1 | RB | RA!=0 | 0 | fdiv
+ | N | 1 | RT | | 011.1 | RB | 0 0 0 | 0 | fabs.
+ | N | 1 | RT | | 110.0 | RB | 0 0 0 | 0 | fmr.
+ | N | 1 | RT | | 110.1 | RB | 0 0 0 | 0 |
16 bit only, FP to INT convert (using C 0b001.1 subencoding)
| 0123 | 4 | | 567.8 | 9 ab | cde | f |
+ | ---- | - | | ----- | ---- | ---- | - |
| 0010 | X | | 001.1 | 0 RA | Y RT | M | fp2int
| 0011 | X | | 001.1 | 0 RA | Y RT | M | int2fp
| 16-bit mode | | 10-bit mode |
| 0 1 2 3 | 4 | | 567.8 | 9 ab | cde | f |
+ | ------- | --- | | ----- | ---- | --- | - |
| 0 0 0 0 | BF2 | | 001.1 | 0 BF | BFA | M | mcrf
| 0 0 0 1 | BA2 | | 001.1 | 0 BA | BB | M | crnor
| 0 1 0 0 | BA2 | | 001.1 | 0 BA | BB | M | crandc
| 16-bit mode | | 10-bit mode |
| 0 | 1 2 3 4 | | 567.8 | 9ab | cde | f |
+ | - | ------- | | ----- | ----- | --- | - |
| N | 0 Bank2 | | 010.0 | CBank | 000 | M | cbank
-**not available** in 10-bit mode:
+**not available** in 10-bit mode, **only** in 16-bit mode:
- | 0 1 2 3 | 4 | | 567.8 | 9 ab | cde | f |
- | 1 1 1 1 | 0 | | 001.1 | 0 00 | RT | M | mtlr
- | 1 1 1 1 | 0 | | 001.1 | 0 01 | RT | M | mtctr
- | 1 1 1 1 | 0 | | 001.1 | 0 11 | RT | M | mtcr
- | 1 1 1 1 | 1 | | 001.1 | 0 00 | RA | M | mflr
- | 1 1 1 1 | 1 | | 001.1 | 0 01 | RA | M | mfctr
- | 1 1 1 1 | 1 | | 001.1 | 0 11 | RA | M | mfcr
+ | 0 1 2 3 | 4 | | 567.8 | 9 ab | cde | f |
+ | ------- | - | | ----- | ---- | ---- | - |
+ | 1 1 1 1 | 0 | | 001.1 | 0 00 | RT | M | mtlr
+ | 1 1 1 1 | 0 | | 001.1 | 0 01 | RT | M | mtctr
+ | 1 1 1 1 | 0 | | 001.1 | 0 11 | RT | M | mtcr
+ | 1 1 1 1 | 1 | | 001.1 | 0 00 | RA | M | mflr
+ | 1 1 1 1 | 1 | | 001.1 | 0 01 | RA | M | mfctr
+ | 1 1 1 1 | 1 | | 001.1 | 0 11 | RA | M | mfcr
### Unallocated
- | 0 1 2 3 | 4 | | 567.8 | 9 ab | cde | f |
- | 0 1 0 1 | | | 001.1 | 0 | | M |
- | 1 0 1 0 | | | 001.1 | 0 | | M |
- | 1 0 1 1 | | | 001.1 | 0 | | M |
- | 1 1 0 0 | | | 001.1 | 0 | | M |
- | 1 1 1 1 | | | 001.1 | 0 10 | | M |
+ | 0 1 2 3 | 4 | | 567.8 | 9 ab | cde | f |
+ | ------- | - | | ----- | ---- | ---- | - |
+ | 0 1 0 1 | | | 001.1 | 0 | | M |
+ | 1 0 1 0 | | | 001.1 | 0 | | M |
+ | 1 0 1 1 | | | 001.1 | 0 | | M |
+ | 1 1 0 0 | | | 001.1 | 0 | | M |
+ | 1 1 1 1 | | | 001.1 | 0 10 | | M |
## Other ideas (Attempt 2)