LDSB MOVB x, R
LDSBA MOVB x, R, asi
LDSH MOVH x, R
LDSHA MOVH x, R, asi
LDUB MOVBU x, R
LDUBA MOVBU x, R, asi
LDUH MOVHU x, R
LDUHA MOVHU x, R, asi
LD MOVW x, R
LDA MOVW x, R, asi
LDD MOVD x, R
LDDA MOVD x, R, asi
note: x is (R+R) or offset(R)
note: MOVD is a bad name, means double word
/* load floating */
LDF MOVF x, FR
LDDF MOVD x, FR
LDFSR MOVW x, FPSR
note: MOVF maybe is MOVW
/* load coprocessor */
LDC MOVW x, CR
LDDC MOVD x, CR
LDCSR MOVW x, CPSR
/* store */
STB MOVB R, x
STBA MOVB R, x, asi
STH MOVH R, x
STHA MOVH R, x, asi
ST MOVW R, x
STA MOVW R, x, asi
STD MOVD R, x
STDA MOVD R, x, asi
/* store floating *
STF MOVF FR, x
STDF MOVD FR, x
STFSR MOVW FPSR, x
STDFQ MOVD FPQ, x
note: STDFQ gok
/* store coprocessor */
STC MOVW CR, x
STDC MOVD CR, x
STCSR MOVW CPSR, x
STDCQ MOVD CPQ, x
/* atomic load/store */
LDSTUB TAS x
LDSTUBA TAS x, asi
/* swap */
SWAP SWAP R, x
SWAPA SWAP R, x, asi
/* calc */
ADD ADDW y,R, R
ADDcc ADDWT y,R, R
ADDX ADDC y,R, R
ADDXcc ADDCT y,R, R
TADDcc
TADDccTV
SUB
SUBcc
SUBX
SUBXcc
TSUBcc
TSUBccTV
MULScc
AND
ANDcc
ANDN
ANDNcc
OR
ORcc
ORN
ORNcc
XOR
XORcc
XNOR
XNORcc
SLL
SRL
SRA
note: y is R or $simm13
/* sethi */
SETHI MOVW $c, R /* high 22 bits */
/* save/restore (same as add) */
SAVE SAVE y,R, R
RESTORE RESTORE y,R, R
/* branch on cc */
BA
BN
BNE
BE
BG
BLE
BGE
BL
BGU
BLEU
BCC
BCS
BPOS
BNEG
BVC
BVS