Type |
Names |
int64 |
%i0, %i1, %i2, %i3, %i4, %i5, %g1, %g4, %g5, %o0, %o1, %o2, %o3, %o4, %o5, %o7, %l0, %l1, %l2, %l3, %l4, %l5, %l6, %l7 |
float64 |
%f0, %f2, %f4, %f6, %f8, %f10, %f12, %f14, %f16, %f18, %f20, %f22, %f24, %f26, %f28, %f30, %f32, %f34, %f36, %f38, %f40, %f42, %f44, %f46, %f48, %f50, %f52, %f54, %f56, %f58, %f60, %f62 |
Qhasm Instruction |
Input |
Evaluated flags |
Output |
Set flags |
Assembly Code |
r = &s |
|
|
int64 r, stack512 s |
|
add %fp,1967-s,r
|
r = *(uint64 *) (s + n) |
int64 s, immediate n |
|
int64 r |
|
ldx [s+n],r
|
r = *(uint32 *) (s + n) |
int64 s, immediate n |
|
int64 r |
|
lduw [s+n],r
|
r = *(uint8 *) (s + n) |
int64 s, immediate n |
|
int64 r |
|
ldub [s+n],r
|
r = *(int64 *) (s + n) |
int64 s, immediate n |
|
int64 r |
|
ldx [s+n],r
|
r = *(int32 *) (s + n) |
int64 s, immediate n |
|
int64 r |
|
ldsw [s+n],r
|
r = *(int8 *) (s + n) |
int64 s, immediate n |
|
int64 r |
|
ldsb [s+n],r
|
r = *(uint64 *) (s + t) |
int64 s, int64 t |
|
int64 r |
|
ldx [s+t],r
|
r = *(uint32 *) (s + t) |
int64 s, int64 t |
|
int64 r |
|
lduw [s+t],r
|
r = *(uint8 *) (s + t) |
int64 s, int64 t |
|
int64 r |
|
ldub [s+t],r
|
r = *(int64 *) (s + t) |
int64 s, int64 t |
|
int64 r |
|
ldx [s+t],r
|
r = *(int32 *) (s + t) |
int64 s, int64 t |
|
int64 r |
|
ldsw [s+t],r
|
r = *(int8 *) (s + t) |
int64 s, int64 t |
|
int64 r |
|
ldsb [s+t],r
|
r = *(swapendian uint64 *) s |
int64 s |
|
int64 r |
|
ldxa [s] 0x88,r
|
r = *(swapendian uint32 *) s |
int64 s |
|
int64 r |
|
lduwa [s] 0x88,r
|
r = *(swapendian uint8 *) s |
int64 s |
|
int64 r |
|
lduba [s] 0x88,r
|
r = *(swapendian int64 *) s |
int64 s |
|
int64 r |
|
ldxa [s] 0x88,r
|
r = *(swapendian int32 *) s |
int64 s |
|
int64 r |
|
ldswa [s] 0x88,r
|
r = *(swapendian int8 *) s |
int64 s |
|
int64 r |
|
ldsba [s] 0x88,r
|
r = s |
stack64 s |
|
int64 r |
|
ldx [%fp+2023-s],r
|
r = top32 s |
stack64 s |
|
int64 r |
|
ld [%fp+2023-s],r
|
r = bottom32 s |
stack64 s |
|
int64 r |
|
ld [%fp+2027-s],r
|
*(uint64 *) (s + n) = r |
int64 r, int64 s, immediate n |
|
|
|
stx r,[s+n]
|
*(uint32 *) (s + n) = r |
int64 r, int64 s, immediate n |
|
|
|
stw r,[s+n]
|
*(uint8 *) (s + n) = r |
int64 r, int64 s, immediate n |
|
|
|
stb r,[s+n]
|
*(int64 *) (s + n) = r |
int64 r, int64 s, immediate n |
|
|
|
stx r,[s+n]
|
*(int32 *) (s + n) = r |
int64 r, int64 s, immediate n |
|
|
|
stw r,[s+n]
|
*(int8 *) (s + n) = r |
int64 r, int64 s, immediate n |
|
|
|
stb r,[s+n]
|
*(uint64 *) (s + t) = r |
int64 r, int64 s, int64 t |
|
|
|
stx r,[s+t]
|
*(uint32 *) (s + t) = r |
int64 r, int64 s, int64 t |
|
|
|
stw r,[s+t]
|
*(uint8 *) (s + t) = r |
int64 r, int64 s, int64 t |
|
|
|
stb r,[s+t]
|
*(int64 *) (s + t) = r |
int64 r, int64 s, int64 t |
|
|
|
stx r,[s+t]
|
*(int32 *) (s + t) = r |
int64 r, int64 s, int64 t |
|
|
|
stw r,[s+t]
|
*(int8 *) (s + t) = r |
int64 r, int64 s, int64 t |
|
|
|
stb r,[s+t]
|
*(swapendian uint64 *) s = r |
int64 r, int64 s |
|
|
|
stxa r,[s] 0x88
|
*(swapendian uint32 *) s = r |
int64 r, int64 s |
|
|
|
stwa r,[s] 0x88
|
*(swapendian uint8 *) s = r |
int64 r, int64 s |
|
|
|
stba r,[s] 0x88
|
*(swapendian int64 *) s = r |
int64 r, int64 s |
|
|
|
stxa r,[s] 0x88
|
*(swapendian int32 *) s = r |
int64 r, int64 s |
|
|
|
stwa r,[s] 0x88
|
*(swapendian int8 *) s = r |
int64 r, int64 s |
|
|
|
stba r,[s] 0x88
|
r = s |
int64 s |
|
stack64 r |
|
stx s,[%fp+2023-r]
|
round *(uint32 *) (s + n) |
int64 s, immediate n |
|
|
|
ld [s+n],%fsr
|
Qhasm Instruction |
Input |
Evaluated flags |
Output |
Set flags |
Assembly Code |
r = s |
int64 s |
|
int64 r |
|
add %g0,s,r
|
r &= t |
int64 r, int64 t |
|
int64 r |
|
and r,t,r
|
r = s & t |
int64 s, int64 t |
|
int64 r |
|
and s,t,r
|
r &= n |
int64 r, immediate n |
|
int64 r |
|
and r,n,r
|
r &= ~t |
int64 r, int64 t |
|
int64 r |
|
andn r,t,r
|
r += t |
int64 r, int64 t |
|
int64 r |
|
add r,t,r
|
r += t |
int64 r, int64 t |
|
int64 r |
unsigned>, unsigned<, =, carry32 |
addcc r,t,r
|
r = s + t |
int64 s, int64 t |
|
int64 r |
|
add s,t,r
|
r = s + t |
int64 s, int64 t |
|
int64 r |
unsigned>, unsigned<, =, carry32 |
addcc s,t,r
|
r += t + carry32 |
int64 r, int64 t |
carry32 |
int64 r |
unsigned>, unsigned<, =, carry32 |
addccc r,t,r
|
r = s + t + carry32 |
int64 s, int64 t |
carry32 |
int64 r |
unsigned>, unsigned<, =, carry32 |
addccc s,t,r
|
r += n |
int64 r, immediate n |
|
int64 r |
|
add r,n,r
|
r += n |
int64 r, immediate n |
|
int64 r |
unsigned>, unsigned<, =, carry32 |
addcc r,n,r
|
r = s + n |
int64 s, immediate n |
|
int64 r |
|
add s,n,r
|
r = s + n |
int64 s, immediate n |
|
int64 r |
unsigned>, unsigned<, =, carry32 |
addcc s,n,r
|
r += n + carry32 |
int64 r, immediate n |
carry32 |
int64 r |
unsigned>, unsigned<, =, carry32 |
addccc r,n,r
|
r = s + n + carry32 |
int64 s, immediate n |
carry32 |
int64 r |
unsigned>, unsigned<, =, carry32 |
addccc s,n,r
|
r -= t |
int64 r, int64 t |
|
int64 r |
|
sub r,t,r
|
r -= t |
int64 r, int64 t |
|
int64 r |
unsigned>, unsigned<, =, carry32 |
subcc r,t,r
|
r - t |
int64 r, int64 t |
|
|
unsigned>, unsigned<, =, carry32 |
subcc r,t,%g0
|
r = s - t |
int64 s, int64 t |
|
int64 r |
|
sub s,t,r
|
r = s - t |
int64 s, int64 t |
|
int64 r |
unsigned>, unsigned<, =, carry32 |
subcc s,t,r
|
r = -n |
immediate n |
|
int64 r |
|
sub %g0,n,r
|
r -= n |
int64 r, immediate n |
|
int64 r |
|
sub r,n,r
|
r -= n |
int64 r, immediate n |
|
int64 r |
unsigned>, unsigned<, =, carry32 |
subcc r,n,r
|
r - n |
int64 r, immediate n |
|
|
unsigned>, unsigned<, =, carry32 |
subcc r,n,%g0
|
r = s - n |
int64 s, immediate n |
|
int64 r |
|
sub s,n,r
|
(int32) r <<= n |
int64 r, immediate n |
|
int64 r |
|
sll r,n,r
|
(int64) r <<= n |
int64 r, immediate n |
|
int64 r |
|
sllx r,n,r
|
(uint32) r <<= n |
int64 r, immediate n |
|
int64 r |
|
sll r,n,r
|
(uint64) r <<= n |
int64 r, immediate n |
|
int64 r |
|
sllx r,n,r
|
r <<= n |
int64 r, immediate n |
|
int64 r |
|
sllx r,n,r
|
r = (int32) s << n |
int64 s, immediate n |
|
int64 r |
|
sll s,n,r
|
r = (int64) s << n |
int64 s, immediate n |
|
int64 r |
|
sllx s,n,r
|
r = (uint32) s << n |
int64 s, immediate n |
|
int64 r |
|
sll s,n,r
|
r = (uint64) s << n |
int64 s, immediate n |
|
int64 r |
|
sllx s,n,r
|
r = s << n |
int64 s, immediate n |
|
int64 r |
|
sllx s,n,r
|
(int32) r >>= n |
int64 r, immediate n |
|
int64 r |
|
sra r,n,r
|
(int64) r >>= n |
int64 r, immediate n |
|
int64 r |
|
srax r,n,r
|
(uint32) r >>= n |
int64 r, immediate n |
|
int64 r |
|
srl r,n,r
|
(uint64) r >>= n |
int64 r, immediate n |
|
int64 r |
|
srlx r,n,r
|
r = (int32) s >> n |
int64 s, immediate n |
|
int64 r |
|
sra s,n,r
|
r = (int64) s >> n |
int64 s, immediate n |
|
int64 r |
|
srax s,n,r
|
r = (uint32) s >> n |
int64 s, immediate n |
|
int64 r |
|
srl s,n,r
|
r = (uint64) s >> n |
int64 s, immediate n |
|
int64 r |
|
srlx s,n,r
|
r ^= t |
int64 r, int64 t |
|
int64 r |
|
xor r,t,r
|
r = s ^ t |
int64 s, int64 t |
|
int64 r |
|
xor s,t,r
|
r ^= n |
int64 r, immediate n |
|
int64 r |
|
xor r,n,r
|
r = n |
immediate n |
|
int64 r |
|
add %g0,n,r
|
r = n & 0xfffffc00 |
immediate n |
|
int64 r |
|
sethi %lm(n),r
|
r = (n & 0xfffffc0000000000) >> 32 |
immediate n |
|
int64 r |
|
sethi %hh(n),r
|
r |= t |
int64 r, int64 t |
|
int64 r |
|
or r,t,r
|
r = s | t |
int64 s, int64 t |
|
int64 r |
|
or s,t,r
|
r |= n |
int64 r, immediate n |
|
int64 r |
|
or r,n,r
|
r |= n & 0x3ff |
int64 r, immediate n |
|
int64 r |
|
or r,%lo(n),r
|
r |= (n & 0x3ff00000000) >> 32 |
int64 r, immediate n |
|
int64 r |
|
or r,%hm(n),r
|
r = ~t |
int64 t |
|
int64 r |
|
not t,r
|