| 1 | o2 | RT | | 011 | RB|0 | offs | 1 | addis.
| 1 | o2 | 0 | | 100 | RB | offs | 1 | cmpdi
| 1 | o2 | 1 | | 100 | RB | offs | 1 | cmpwi
- | 1 | o2 | X | | 101 | RA | offs | 1 | ldi
- | 1 | o2 | X | | 110 | RA | offs | 1 | sti
+ | 1 | o2 | 0 | | 101 | RA | offs | 1 | ldi
+ | 1 | o2 | 1 | | 101 | RA | offs | 1 | lwi
+ | 1 | o2 | 0 | | 110 | RA | offs | 1 | flwi
+ | 1 | o2 | 1 | | 110 | RA | offs | 1 | fldi
* Note that bc is included (below)
* immediate is constructed from offs (LSBs) and o2 (MSB)
-* X=0 is 32 bit (lwi), X=1 is 64 bit (ldi). offset is aligned.
+* for loads, offset is aligned. 8byte: o2||offs||0b000 4byte: 0b00
* RB|0 if RB is zero, addi. becomes "li"
### Branch
| 0 | 1 | 2 3 4 | | 567 | 8 9 a | b c d | e | f |
| N | 1 | RT | | 100 | RB | RA!=0 | 0 | M |
| N | 1 | RT | | 100 | RB | RA!=0 | 1 | M |
- | N | 1 | RT | | 101 | RB | RA!=0 | 0 | M |
- | N | 1 | RT | | 101 | RB | RA!=0 | 1 | M |
+ | N | 1 | RT | | 101 | RB | RA!=0 | 0 | M | xor
+ | N | 1 | RT | | 101 | RB | RA!=0 | 1 | M | eqv (xnor)
| N | 1 | RT | | 100 | RB | 0 0 0 | 0 | M | extsb
| N | 1 | RT | | 100 | RB | 0 0 0 | 1 | M | cnttz
| N | 1 | RT | | 101 | RB | 0 0 0 | 0 | M |
- | N | 1 | RT | | 101 | RB | 0 0 0 | 1 | M |
+ | N | 1 | RT | | 101 | RB | 0 0 0 | 1 | M | extsh
10 bit mode: