Files
OSACA/osaca/data/isa/aarch64.yml
2023-03-14 17:50:48 +01:00

3406 lines
80 KiB
YAML

osaca_version: 0.5.0
isa: "AArch64"
# Contains all operand-irregular instruction forms OSACA supports for AArch64.
# Operand-regular for a AArch64 instruction form with N operands in the shape of
# mnemonic op1 ... opN
# means that op1 is the only destination operand and op2 to op(N) are source operands.
instruction_forms:
- name: add
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
- class: immediate
imd: 'int'
source: true
destination: false
operation: "op1['value'] = op2['value'] + op3['value']; op1['name'] = op2['name']"
- name: adds
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
- class: register
prefix: x
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
operation: "op1['value'] = op2['value'] + op3['value']; op1['name'] = op2['name']"
- name: adds
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
- class: immediate
imd: 'int'
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
operation: "op1['value'] = op2['value'] + op3['value']; op1['name'] = op2['name']"
- name: adds
operands:
- class: register
prefix: w
source: false
destination: true
- class: register
prefix: w
source: true
destination: false
- class: register
prefix: w
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
operation: "op1['value'] = op2['value'] + op3['value']; op1['name'] = op2['name']"
- name: adds
operands:
- class: register
prefix: w
source: false
destination: true
- class: register
prefix: w
source: true
destination: false
- class: immediate
imd: 'int'
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
operation: "op1['value'] = op2['value'] + op3['value']; op1['name'] = op2['name']"
- name: sub
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
- class: immediate
imd: 'int'
source: true
destination: false
operation: "op1['value'] = op2['value'] - op3['value']; op1['name'] = op2['name']"
- name: subs
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
- class: register
prefix: x
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
operation: "op1['value'] = op2['value'] - op3['value']; op1['name'] = op2['name']"
- name: subs
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
- class: immediate
imd: 'int'
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
operation: "op1['value'] = op2['value'] - op3['value']; op1['name'] = op2['name']"
- name: subs
operands:
- class: register
prefix: w
source: false
destination: true
- class: register
prefix: w
source: true
destination: false
- class: register
prefix: w
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
operation: "op1['value'] = op2['value'] - op3['value']; op1['name'] = op2['name']"
- name: subs
operands:
- class: register
prefix: w
source: false
destination: true
- class: register
prefix: w
source: true
destination: false
- class: immediate
imd: 'int'
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
operation: "op1['value'] = op2['value'] - op3['value']; op1['name'] = op2['name']"
- name: [adcs, sbcs]
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
- class: register
prefix: x
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [adcs, sbcs]
operands:
- class: register
prefix: w
source: false
destination: true
- class: register
prefix: w
source: true
destination: false
- class: register
prefix: w
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: negs
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: negs
operands:
- class: register
prefix: w
source: false
destination: true
- class: register
prefix: w
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: ngcs
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: ngcs
operands:
- class: register
prefix: w
source: false
destination: true
- class: register
prefix: w
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ands, bics]
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
- class: register
prefix: x
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ands, bics]
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
- class: immediate
imd: 'int'
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ands, bics]
operands:
- class: register
prefix: w
source: false
destination: true
- class: register
prefix: w
source: true
destination: false
- class: register
prefix: w
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ands, bics]
operands:
- class: register
prefix: w
source: false
destination: true
- class: register
prefix: w
source: true
destination: false
- class: immediate
imd: 'int'
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: tst
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: tst
operands:
- class: register
prefix: x
source: false
destination: true
- class: immediate
imd: 'int'
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: tst
operands:
- class: register
prefix: w
source: false
destination: true
- class: register
prefix: w
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: tst
operands:
- class: register
prefix: w
source: false
destination: true
- class: immediate
imd: 'int'
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [b, b.any, b.none]
operands:
- class: identifier
source: false
destination: false
# - name: [bcc, bcs, b.ne, b.any, b.none, b.lt, b.eq, b.hs, b.gt, bne, beq]
# operands:
# - class: identifier
# source: false
# destination: false
- name: [beq, b.eq, bne, b.ne]
operands:
- class: identifier
source: false
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- name: [bcs, b.cs, bhs, b.hs, bcc, b.cc, blo, b.lo]
operands:
- class: identifier
source: false
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [bhi, b.hi, bls, b.ls]
operands:
- class: identifier
source: false
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "C"
source: true
destination: false
- name: [bge, b.ge, blt, b.lt]
operands:
- class: identifier
source: false
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [bgt, b.gt, ble, b.le]
operands:
- class: identifier
source: false
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [bmi, b.mi, bpl, b.pl]
operands:
- class: identifier
source: false
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- name: [bvs, b.vs, bvc, b.vc]
operands:
- class: identifier
source: false
destination: false
hidden_operands:
- class: flag
name: "V"
source: true
destination: false
- name: [incb, incd]
operands:
- class: register
prefix: x
source: true
destination: true
- name: [incb, incd]
operands:
- class: register
prefix: x
source: true
destination: true
- class: identifier
source: false
destination: false
- class: identifier
source: false
destination: false
- class: immediate
imd: int
source: false
destination: false
- name: [fmla, fmad, mla, fmls, fmsb, mls]
operands:
- class: register
prefix: "*"
shape: "*"
source: true
destination: true
- class: register
prefix: "*"
shape: "*"
source: true
destination: false
- class: register
prefix: "*"
shape: "*"
source: true
destination: false
- class: register
prefix: "*"
shape: "*"
source: true
destination: false
- name: [fmla, mla, fmls, mls, smlal, smlal2, smlalb, smlalt, smlsl, smlsl2, smlslb, smlslt, umlal, umlal2, umlalb, umlalt, umlsl, umlsl2, umlslb, umlslt]
operands:
- class: register
prefix: "*"
shape: "*"
source: true
destination: true
- class: register
prefix: "*"
shape: "*"
source: true
destination: false
- class: register
prefix: "*"
shape: "*"
source: true
destination: false
- name: ldp
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: false
destination: true
- class: memory
base: "*"
offset: "*"
index: "*"
scale: "*"
pre-indexed: "*"
post-indexed: "*"
source: true
destination: false
- name: [ldr, ldur, ldrb, ldrh, ldrsb, ldrsh, ldrsw]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: memory
base: "*"
offset: "*"
index: "*"
scale: "*"
pre-indexed: "*"
post-indexed: "*"
source: true
destination: false
- name: mov
operands:
- class: register
prefix: x
source: false
destination: true
- class: register
prefix: x
source: true
destination: false
operation: "op1['name'] = op2['name']; op1['value'] = op2['value']"
- name: stp
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: memory
base: "*"
offset: "*"
index: "*"
scale: "*"
pre-indexed: "*"
post-indexed: "*"
source: false
destination: true
- name: [str, stur]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: memory
base: "*"
offset: "*"
index: "*"
scale: "*"
pre-indexed: "*"
post-indexed: "*"
source: false
destination: true
- name: cmp
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: cmp
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: cmn
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: cmn
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: fcmp
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- name: fcmp
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: double
source: true
destination: false
- name: fcmp
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: float
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "eq"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "ne"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "cs"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "hs"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "cc"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "lo"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "hi"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "C"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "ls"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "C"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "ge"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "lt"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "gt"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "le"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "mi"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "pl"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "vs"
source: true
destination: false
hidden_operands:
- class: flag
name: "V"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "vc"
source: true
destination: false
hidden_operands:
- class: flag
name: "V"
source: true
destination: false
- name: [cinc, cinv, cneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "AL"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "C"
source: true
destination: false
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "eq"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "ne"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "cs"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "hs"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "cc"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "lo"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "hi"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "C"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "ls"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "C"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "ge"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "lt"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "gt"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "le"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "mi"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "pl"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "vs"
source: true
destination: false
hidden_operands:
- class: flag
name: "V"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "vc"
source: true
destination: false
hidden_operands:
- class: flag
name: "V"
source: true
destination: false
- name: [cset, csetm]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: condition
ccode: "AL"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "C"
source: true
destination: false
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "eq"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "ne"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "cs"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "hs"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "cc"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "lo"
source: true
destination: false
hidden_operands:
- class: flag
name: "C"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "hi"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "C"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "ls"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "C"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "ge"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "lt"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "gt"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "le"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "mi"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "pl"
source: true
destination: false
hidden_operands:
- class: flag
name: "N"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "vs"
source: true
destination: false
hidden_operands:
- class: flag
name: "V"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "vc"
source: true
destination: false
hidden_operands:
- class: flag
name: "V"
source: true
destination: false
- name: [csel, csinc, csinv, csneg]
operands:
- class: register
prefix: "*"
source: false
destination: true
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: condition
ccode: "AL"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: false
- class: flag
name: "C"
source: true
destination: false
- class: flag
name: "N"
source: true
destination: false
- class: flag
name: "V"
source: true
destination: false
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "EQ"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "NE"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "CS"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "HS"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "CC"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "LO"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "MI"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "PL"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "VS"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "VC"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "HI"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "LS"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "GE"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "LT"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "GT"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "LE"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "AL"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "EQ"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "NE"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "CS"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "HS"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "CC"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "LO"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "MI"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "PL"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "VS"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "VC"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "HI"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "LS"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: false
destination: true
- class: flag
name: "V"
source: false
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "GE"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "LT"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: false
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "GT"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "LE"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: false
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [ccmn, ccmp]
operands:
- class: register
prefix: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false
- class: condition
ccode: "AL"
source: true
destination: false
hidden_operands:
- class: flag
name: "Z"
source: true
destination: true
- class: flag
name: "C"
source: true
destination: true
- class: flag
name: "N"
source: true
destination: true
- class: flag
name: "V"
source: true
destination: true
- name: [sadalp, uadalp]
operands:
- class: register
prefix: "*"
shape: "*"
source: true
destination: true
- class: register
prefix: "*"
shape: "*"
source: true
destination: false
- name: [sadalp, uadalp, sabal, sabal2, sabalb, sabalt]
operands:
- class: register
prefix: "*"
shape: "*"
source: true
destination: true
- class: register
prefix: "*"
shape: "*"
source: true
destination: false
- class: register
prefix: "*"
shape: "*"
source: true
destination: false
- name: [ssra, srsra, usra, ursra]
operands:
- class: register
prefix: "*"
shape: "*"
source: true
destination: true
- class: register
prefix: "*"
shape: "*"
source: true
destination: false
- class: immediate
imd: "int"
source: true
destination: false