| Type |
Names |
| int32 |
r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, r20, r21, r22, r23, r24, r25, r26, r27, r28, r29, r30, r31, r2 |
| float64 |
f0, f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11, f12, f13, f14, f15, f16, f17, f18, f19, f20, f21, f22, f23, f24, f25, f26, f27, f28, f29, f30, f31 |
| Type |
Names |
| int32 |
11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 |
| float64 |
15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32 |
| Qhasm Instruction |
Input |
Evaluated flags |
Output |
Set flags |
Assembly Code |
| r = s |
stack32 s |
|
int32 r |
|
lwz r,s
|
| r = top s |
stack64 s |
|
int32 r |
|
lwz r,s
|
| r = bottom s |
stack64 s |
|
int32 r |
|
lwz r,!shift4s
|
| r = *(int32 *) (s + n) |
int32 s, immediate n |
|
int32 r |
|
lwa r,n(s)
|
| r = *(int32 *) (s - n) |
int32 s, immediate n |
|
int32 r |
|
lwa r,-n(s)
|
| r = *(int32 *) (s + t) |
int32 s, int32 t |
|
int32 r |
|
lwax r,s,t
|
| r = *(int32 *) (s += n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lwau r,n(s)
|
| r = *(int32 *) (s -= n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lwau r,-n(s)
|
| r = *(int32 *) (s += t) |
int32 s, int32 t |
|
int32 r, int32 s |
|
lwaux r,s,t
|
| r = *(uint32 *) (s + n) |
int32 s, immediate n |
|
int32 r |
|
lwz r,n(s)
|
| r = *(uint32 *) (s - n) |
int32 s, immediate n |
|
int32 r |
|
lwz r,-n(s)
|
| r = *(uint32 *) (s + t) |
int32 s, int32 t |
|
int32 r |
|
lwzx r,s,t
|
| r = *(uint32 *) (s += n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lwzu r,n(s)
|
| r = *(uint32 *) (s -= n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lwzu r,-n(s)
|
| r = *(uint32 *) (s += t) |
int32 s, int32 t |
|
int32 r, int32 s |
|
lwzux r,s,t
|
| r = *(int16 *) (s + n) |
int32 s, immediate n |
|
int32 r |
|
lha r,n(s)
|
| r = *(int16 *) (s - n) |
int32 s, immediate n |
|
int32 r |
|
lha r,-n(s)
|
| r = *(int16 *) (s + t) |
int32 s, int32 t |
|
int32 r |
|
lhax r,s,t
|
| r = *(int16 *) (s += n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lhau r,n(s)
|
| r = *(int16 *) (s -= n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lhau r,-n(s)
|
| r = *(int16 *) (s += t) |
int32 s, int32 t |
|
int32 r, int32 s |
|
lhaux r,s,t
|
| r = *(uint16 *) (s + n) |
int32 s, immediate n |
|
int32 r |
|
lhz r,n(s)
|
| r = *(uint16 *) (s - n) |
int32 s, immediate n |
|
int32 r |
|
lhz r,-n(s)
|
| r = *(uint16 *) (s + t) |
int32 s, int32 t |
|
int32 r |
|
lhzx r,s,t
|
| r = *(uint16 *) (s += n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lhzu r,n(s)
|
| r = *(uint16 *) (s -= n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lhzu r,-n(s)
|
| r = *(uint16 *) (s += t) |
int32 s, int32 t |
|
int32 r, int32 s |
|
lhzux r,s,t
|
| r = *(int8 *) (s + n) |
int32 s, immediate n |
|
int32 r |
|
lba r,n(s)
|
| r = *(int8 *) (s - n) |
int32 s, immediate n |
|
int32 r |
|
lba r,-n(s)
|
| r = *(int8 *) (s + t) |
int32 s, int32 t |
|
int32 r |
|
lbax r,s,t
|
| r = *(int8 *) (s += n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lbau r,n(s)
|
| r = *(int8 *) (s -= n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lbau r,-n(s)
|
| r = *(int8 *) (s += t) |
int32 s, int32 t |
|
int32 r, int32 s |
|
lbaux r,s,t
|
| r = *(uint8 *) (s + n) |
int32 s, immediate n |
|
int32 r |
|
lbz r,n(s)
|
| r = *(uint8 *) (s - n) |
int32 s, immediate n |
|
int32 r |
|
lbz r,-n(s)
|
| r = *(uint8 *) (s + t) |
int32 s, int32 t |
|
int32 r |
|
lbzx r,s,t
|
| r = *(uint8 *) (s += n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lbzu r,n(s)
|
| r = *(uint8 *) (s -= n) |
int32 s, immediate n |
|
int32 r, int32 s |
|
lbzu r,-n(s)
|
| r = *(uint8 *) (s += t) |
int32 s, int32 t |
|
int32 r, int32 s |
|
lbzux r,s,t
|
| r = *(swapendian int32 *) s |
int32 s |
|
int32 r |
|
lwbrx r,0,s
|
| r = *(swapendian uint32 *) s |
int32 s |
|
int32 r |
|
lwbrx r,0,s
|
| r = s |
int32 s |
|
stack32 r |
|
stw s,r
|
| r top = s |
int32 s |
|
stack64 r |
|
stw s,r
|
| r bottom = s |
int32 s |
|
stack64 r |
|
stw s,!shift4r
|
| inplace r top = s |
int32 s, stack64 r |
|
stack64 r |
|
stw s,r
|
| inplace r bottom = s |
int32 s, stack64 r |
|
stack64 r |
|
stw s,!shift4r
|
| *(uint32 *) (s + n) = r |
int32 r, int32 s, immediate n |
|
|
|
stw r,n(s)
|
| *(uint32 *) (s - n) = r |
int32 r, int32 s, immediate n |
|
|
|
stw r,-n(s)
|
| *(uint32 *) (s + t) = r |
int32 r, int32 s, int32 t |
|
|
|
stwx r,s,t
|
| *(uint32 *) (s += n) = r |
int32 r, int32 s, immediate n |
|
int32 s |
|
stwu r,n(s)
|
| *(uint32 *) (s -= n) = r |
int32 r, int32 s, immediate n |
|
int32 s |
|
stwu r,-n(s)
|
| *(uint32 *) (s += t) = r |
int32 r, int32 s, int32 t |
|
int32 s |
|
stwux r,s,t
|
| *(uint16 *) (s + n) = r |
int32 r, int32 s, immediate n |
|
|
|
sth r,n(s)
|
| *(uint16 *) (s - n) = r |
int32 r, int32 s, immediate n |
|
|
|
sth r,-n(s)
|
| *(uint16 *) (s + t) = r |
int32 r, int32 s, int32 t |
|
|
|
sthx r,s,t
|
| *(uint16 *) (s += n) = r |
int32 r, int32 s, immediate n |
|
int32 s |
|
sthu r,n(s)
|
| *(uint16 *) (s -= n) = r |
int32 r, int32 s, immediate n |
|
int32 s |
|
sthu r,-n(s)
|
| *(uint16 *) (s += t) = r |
int32 r, int32 s, int32 t |
|
int32 s |
|
sthux r,s,t
|
| *(uint8 *) (s + n) = r |
int32 r, int32 s, immediate n |
|
|
|
stb r,n(s)
|
| *(uint8 *) (s - n) = r |
int32 r, int32 s, immediate n |
|
|
|
stb r,-n(s)
|
| *(uint8 *) (s + t) = r |
int32 r, int32 s, int32 t |
|
|
|
stbx r,s,t
|
| *(uint8 *) (s += n) = r |
int32 r, int32 s, immediate n |
|
int32 s |
|
stbu r,n(s)
|
| *(uint8 *) (s -= n) = r |
int32 r, int32 s, immediate n |
|
int32 s |
|
stbu r,-n(s)
|
| *(uint8 *) (s += t) = r |
int32 r, int32 s, int32 t |
|
int32 s |
|
stbux r,s,t
|
| *(swapendian int32 *) s = r |
int32 r, int32 s |
|
|
|
stwbrx r,0,s
|
| *(swapendian uint32 *) s = r |
int32 r, int32 s |
|
|
|
stwbrx r,0,s
|
| Qhasm Instruction |
Input |
Evaluated flags |
Output |
Set flags |
Assembly Code |
| r = s |
stack64 s |
|
float64 r |
|
lfd r,s
|
| r = *(float64 *) (s + n) |
int32 s, immediate n |
|
float64 r |
|
lfd r,n(s)
|
| r = *(float64 *) (s - n) |
int32 s, immediate n |
|
float64 r |
|
lfd r,-n(s)
|
| r = *(float64 *) (s + t) |
int32 s, int32 t |
|
float64 r |
|
lfdx r,s,t
|
| r = s |
float64 s |
|
stack64 r |
|
stfd s,r
|
| *(float64 *) (s + n) = r |
float64 r, int32 s, immediate n |
|
|
|
stfd r,n(s)
|
| *(float64 *) (s - n) = r |
float64 r, int32 s, immediate n |
|
|
|
stfd r,-n(s)
|
| *(float64 *) (s + t) = r |
float64 r, int32 s, int32 t |
|
|
|
stfdx r,s,t
|
| *(float64 *) (s += n) = r |
float64 r, int32 s, immediate n |
|
int32 s |
|
stfdu r,n(s)
|
| *(float64 *) (s -= n) = r |
float64 r, int32 s, immediate n |
|
int32 s |
|
stfdu r,-n(s)
|
| *(float64 *) (s += t) = r |
float64 r, int32 s, int32 t |
|
int32 s |
|
stfdux r,s,t
|
| Qhasm Instruction |
Input |
Evaluated flags |
Output |
Set flags |
Assembly Code |
| r = s |
float64 s |
|
float64 r |
|
fmr r,s
|
| r *= t |
float64 r, float64 t |
|
float64 r |
|
fmul r,r,t
|
| r = s * t |
float64 s, float64 t |
|
float64 r |
|
fmul r,s,t
|
| r = s * t + u |
float64 s, float64 t, float64 u |
|
float64 r |
|
fmadd r,s,t,u
|
| r = s * t - u |
float64 s, float64 t, float64 u |
|
float64 r |
|
fmsub r,s,t,u
|
| r += t |
float64 r, float64 t |
|
float64 r |
|
fadd r,r,t
|
| r = s + t |
float64 s, float64 t |
|
float64 r |
|
fadd r,s,t
|
| r += s * t |
float64 r, float64 s, float64 t |
|
float64 r |
|
fmadd r,s,t,r
|
| r -= t |
float64 r, float64 t |
|
float64 r |
|
fsub r,r,t
|
| r = s - t |
float64 s, float64 t |
|
float64 r |
|
fsub r,s,t
|
| r = -(s * t + u) |
float64 s, float64 t, float64 u |
|
float64 r |
|
fnmadd r,s,t,u
|
| r = -(s * t - u) |
float64 s, float64 t, float64 u |
|
float64 r |
|
fnmsub r,s,t,u
|