...

Package armasm

import "cmd/vendor/golang.org/x/arch/arm/armasm"
Overview
Index

Overview ▾

Index ▾

Package files

decode.go gnu.go inst.go plan9x.go tables.go

func GNUSyntax

func GNUSyntax(inst Inst) string

GNUSyntax returns the GNU assembler syntax for the instruction, as defined by GNU binutils. This form typically matches the syntax defined in the ARM Reference Manual.

func GoSyntax

func GoSyntax(inst Inst, pc uint64, symname func(uint64) (string, uint64), text io.ReaderAt) string

GoSyntax returns the Go assembler syntax for the instruction. The syntax was originally defined by Plan 9. The pc is the program counter of the instruction, used for expanding PC-relative addresses into absolute ones. The symname function queries the symbol table for the program being disassembled. Given a target address it returns the name and base address of the symbol containing the target, if any; otherwise it returns "", 0. The reader r should read from the text segment using text addresses as offsets; it is used to display pc-relative loads as constant loads.

type AddrMode

An AddrMode is an ARM addressing mode.

type AddrMode uint8
const (
    AddrPostIndex AddrMode // [R], X – use address R, set R = R + X
    AddrPreIndex           // [R, X]! – use address R + X, set R = R + X
    AddrOffset             // [R, X] – use address R + X
    AddrLDM                // R – [R] but formats as R, for LDM/STM only
    AddrLDM_WB             // R! - [R], X where X is instruction-specific amount, for LDM/STM only
)

type Arg

An Arg is a single instruction argument, one of these types: Endian, Imm, Mem, PCRel, Reg, RegList, RegShift, RegShiftReg.

type Arg interface {
    IsArg()
    String() string
}

type Args

An Args holds the instruction arguments. If an instruction has fewer than 4 arguments, the final elements in the array are nil.

type Args [4]Arg

type Endian

An Endian is the argument to the SETEND instruction.

type Endian uint8
const (
    LittleEndian Endian = 0
    BigEndian    Endian = 1
)

func (Endian) IsArg

func (Endian) IsArg()

func (Endian) String

func (e Endian) String() string

type Float32Imm

type Float32Imm float32

func (Float32Imm) IsArg

func (Float32Imm) IsArg()

func (Float32Imm) String

func (f Float32Imm) String() string

type Float64Imm

type Float64Imm float32

func (Float64Imm) IsArg

func (Float64Imm) IsArg()

func (Float64Imm) String

func (f Float64Imm) String() string

type Imm

An Imm is an integer constant.

type Imm uint32

func (Imm) IsArg

func (Imm) IsArg()

func (Imm) String

func (i Imm) String() string

type ImmAlt

An ImmAlt is an alternate encoding of an integer constant.

type ImmAlt struct {
    Val uint8
    Rot uint8
}

func (ImmAlt) Imm

func (i ImmAlt) Imm() Imm

func (ImmAlt) IsArg

func (ImmAlt) IsArg()

func (ImmAlt) String

func (i ImmAlt) String() string

type Inst

An Inst is a single instruction.

type Inst struct {
    Op   Op     // Opcode mnemonic
    Enc  uint32 // Raw encoding bits.
    Len  int    // Length of encoding in bytes.
    Args Args   // Instruction arguments, in ARM manual order.
}

func Decode

func Decode(src []byte, mode Mode) (inst Inst, err error)

Decode decodes the leading bytes in src as a single instruction.

func (Inst) String

func (i Inst) String() string

type Label

A Label is a text (code) address.

type Label uint32

func (Label) IsArg

func (Label) IsArg()

func (Label) String

func (i Label) String() string

type Mem

A Mem is a memory reference made up of a base R and index expression X. The effective memory address is R or R+X depending on AddrMode. The index expression is X = Sign*(Index Shift Count) + Offset, but in any instruction either Sign = 0 or Offset = 0.

type Mem struct {
    Base   Reg
    Mode   AddrMode
    Sign   int8
    Index  Reg
    Shift  Shift
    Count  uint8
    Offset int16
}

func (Mem) IsArg

func (Mem) IsArg()

func (Mem) String

func (m Mem) String() string

type Mode

A Mode is an instruction execution mode.

type Mode int
const (
    ModeARM Mode
    ModeThumb
)

func (Mode) String

func (m Mode) String() string

type Op

An Op is an ARM opcode.

type Op uint16
const (
    ADC_EQ Op
    ADC_NE
    ADC_CS
    ADC_CC
    ADC_MI
    ADC_PL
    ADC_VS
    ADC_VC
    ADC_HI
    ADC_LS
    ADC_GE
    ADC_LT
    ADC_GT
    ADC_LE
    ADC
    ADC_ZZ
    ADC_S_EQ
    ADC_S_NE
    ADC_S_CS
    ADC_S_CC
    ADC_S_MI
    ADC_S_PL
    ADC_S_VS
    ADC_S_VC
    ADC_S_HI
    ADC_S_LS
    ADC_S_GE
    ADC_S_LT
    ADC_S_GT
    ADC_S_LE
    ADC_S
    ADC_S_ZZ
    ADD_EQ
    ADD_NE
    ADD_CS
    ADD_CC
    ADD_MI
    ADD_PL
    ADD_VS
    ADD_VC
    ADD_HI
    ADD_LS
    ADD_GE
    ADD_LT
    ADD_GT
    ADD_LE
    ADD
    ADD_ZZ
    ADD_S_EQ
    ADD_S_NE
    ADD_S_CS
    ADD_S_CC
    ADD_S_MI
    ADD_S_PL
    ADD_S_VS
    ADD_S_VC
    ADD_S_HI
    ADD_S_LS
    ADD_S_GE
    ADD_S_LT
    ADD_S_GT
    ADD_S_LE
    ADD_S
    ADD_S_ZZ
    AND_EQ
    AND_NE
    AND_CS
    AND_CC
    AND_MI
    AND_PL
    AND_VS
    AND_VC
    AND_HI
    AND_LS
    AND_GE
    AND_LT
    AND_GT
    AND_LE
    AND
    AND_ZZ
    AND_S_EQ
    AND_S_NE
    AND_S_CS
    AND_S_CC
    AND_S_MI
    AND_S_PL
    AND_S_VS
    AND_S_VC
    AND_S_HI
    AND_S_LS
    AND_S_GE
    AND_S_LT
    AND_S_GT
    AND_S_LE
    AND_S
    AND_S_ZZ
    ASR_EQ
    ASR_NE
    ASR_CS
    ASR_CC
    ASR_MI
    ASR_PL
    ASR_VS
    ASR_VC
    ASR_HI
    ASR_LS
    ASR_GE
    ASR_LT
    ASR_GT
    ASR_LE
    ASR
    ASR_ZZ
    ASR_S_EQ
    ASR_S_NE
    ASR_S_CS
    ASR_S_CC
    ASR_S_MI
    ASR_S_PL
    ASR_S_VS
    ASR_S_VC
    ASR_S_HI
    ASR_S_LS
    ASR_S_GE
    ASR_S_LT
    ASR_S_GT
    ASR_S_LE
    ASR_S
    ASR_S_ZZ
    B_EQ
    B_NE
    B_CS
    B_CC
    B_MI
    B_PL
    B_VS
    B_VC
    B_HI
    B_LS
    B_GE
    B_LT
    B_GT
    B_LE
    B
    B_ZZ
    BFC_EQ
    BFC_NE
    BFC_CS
    BFC_CC
    BFC_MI
    BFC_PL
    BFC_VS
    BFC_VC
    BFC_HI
    BFC_LS
    BFC_GE
    BFC_LT
    BFC_GT
    BFC_LE
    BFC
    BFC_ZZ
    BFI_EQ
    BFI_NE
    BFI_CS
    BFI_CC
    BFI_MI
    BFI_PL
    BFI_VS
    BFI_VC
    BFI_HI
    BFI_LS
    BFI_GE
    BFI_LT
    BFI_GT
    BFI_LE
    BFI
    BFI_ZZ
    BIC_EQ
    BIC_NE
    BIC_CS
    BIC_CC
    BIC_MI
    BIC_PL
    BIC_VS
    BIC_VC
    BIC_HI
    BIC_LS
    BIC_GE
    BIC_LT
    BIC_GT
    BIC_LE
    BIC
    BIC_ZZ
    BIC_S_EQ
    BIC_S_NE
    BIC_S_CS
    BIC_S_CC
    BIC_S_MI
    BIC_S_PL
    BIC_S_VS
    BIC_S_VC
    BIC_S_HI
    BIC_S_LS
    BIC_S_GE
    BIC_S_LT
    BIC_S_GT
    BIC_S_LE
    BIC_S
    BIC_S_ZZ
    BKPT_EQ
    BKPT_NE
    BKPT_CS
    BKPT_CC
    BKPT_MI
    BKPT_PL
    BKPT_VS
    BKPT_VC
    BKPT_HI
    BKPT_LS
    BKPT_GE
    BKPT_LT
    BKPT_GT
    BKPT_LE
    BKPT
    BKPT_ZZ
    BL_EQ
    BL_NE
    BL_CS
    BL_CC
    BL_MI
    BL_PL
    BL_VS
    BL_VC
    BL_HI
    BL_LS
    BL_GE
    BL_LT
    BL_GT
    BL_LE
    BL
    BL_ZZ
    BLX_EQ
    BLX_NE
    BLX_CS
    BLX_CC
    BLX_MI
    BLX_PL
    BLX_VS
    BLX_VC
    BLX_HI
    BLX_LS
    BLX_GE
    BLX_LT
    BLX_GT
    BLX_LE
    BLX
    BLX_ZZ
    BX_EQ
    BX_NE
    BX_CS
    BX_CC
    BX_MI
    BX_PL
    BX_VS
    BX_VC
    BX_HI
    BX_LS
    BX_GE
    BX_LT
    BX_GT
    BX_LE
    BX
    BX_ZZ
    BXJ_EQ
    BXJ_NE
    BXJ_CS
    BXJ_CC
    BXJ_MI
    BXJ_PL
    BXJ_VS
    BXJ_VC
    BXJ_HI
    BXJ_LS
    BXJ_GE
    BXJ_LT
    BXJ_GT
    BXJ_LE
    BXJ
    BXJ_ZZ
    CLREX

    CLZ_EQ
    CLZ_NE
    CLZ_CS
    CLZ_CC
    CLZ_MI
    CLZ_PL
    CLZ_VS
    CLZ_VC
    CLZ_HI
    CLZ_LS
    CLZ_GE
    CLZ_LT
    CLZ_GT
    CLZ_LE
    CLZ
    CLZ_ZZ
    CMN_EQ
    CMN_NE
    CMN_CS
    CMN_CC
    CMN_MI
    CMN_PL
    CMN_VS
    CMN_VC
    CMN_HI
    CMN_LS
    CMN_GE
    CMN_LT
    CMN_GT
    CMN_LE
    CMN
    CMN_ZZ
    CMP_EQ
    CMP_NE
    CMP_CS
    CMP_CC
    CMP_MI
    CMP_PL
    CMP_VS
    CMP_VC
    CMP_HI
    CMP_LS
    CMP_GE
    CMP_LT
    CMP_GT
    CMP_LE
    CMP
    CMP_ZZ
    DBG_EQ
    DBG_NE
    DBG_CS
    DBG_CC
    DBG_MI
    DBG_PL
    DBG_VS
    DBG_VC
    DBG_HI
    DBG_LS
    DBG_GE
    DBG_LT
    DBG_GT
    DBG_LE
    DBG
    DBG_ZZ
    DMB
    DSB

    EOR_EQ
    EOR_NE
    EOR_CS
    EOR_CC
    EOR_MI
    EOR_PL
    EOR_VS
    EOR_VC
    EOR_HI
    EOR_LS
    EOR_GE
    EOR_LT
    EOR_GT
    EOR_LE
    EOR
    EOR_ZZ
    EOR_S_EQ
    EOR_S_NE
    EOR_S_CS
    EOR_S_CC
    EOR_S_MI
    EOR_S_PL
    EOR_S_VS
    EOR_S_VC
    EOR_S_HI
    EOR_S_LS
    EOR_S_GE
    EOR_S_LT
    EOR_S_GT
    EOR_S_LE
    EOR_S
    EOR_S_ZZ
    ISB

    LDM_EQ
    LDM_NE
    LDM_CS
    LDM_CC
    LDM_MI
    LDM_PL
    LDM_VS
    LDM_VC
    LDM_HI
    LDM_LS
    LDM_GE
    LDM_LT
    LDM_GT
    LDM_LE
    LDM
    LDM_ZZ
    LDMDA_EQ
    LDMDA_NE
    LDMDA_CS
    LDMDA_CC
    LDMDA_MI
    LDMDA_PL
    LDMDA_VS
    LDMDA_VC
    LDMDA_HI
    LDMDA_LS
    LDMDA_GE
    LDMDA_LT
    LDMDA_GT
    LDMDA_LE
    LDMDA
    LDMDA_ZZ
    LDMDB_EQ
    LDMDB_NE
    LDMDB_CS
    LDMDB_CC
    LDMDB_MI
    LDMDB_PL
    LDMDB_VS
    LDMDB_VC
    LDMDB_HI
    LDMDB_LS
    LDMDB_GE
    LDMDB_LT
    LDMDB_GT
    LDMDB_LE
    LDMDB
    LDMDB_ZZ
    LDMIB_EQ
    LDMIB_NE
    LDMIB_CS
    LDMIB_CC
    LDMIB_MI
    LDMIB_PL
    LDMIB_VS
    LDMIB_VC
    LDMIB_HI
    LDMIB_LS
    LDMIB_GE
    LDMIB_LT
    LDMIB_GT
    LDMIB_LE
    LDMIB
    LDMIB_ZZ
    LDR_EQ
    LDR_NE
    LDR_CS
    LDR_CC
    LDR_MI
    LDR_PL
    LDR_VS
    LDR_VC
    LDR_HI
    LDR_LS
    LDR_GE
    LDR_LT
    LDR_GT
    LDR_LE
    LDR
    LDR_ZZ
    LDRB_EQ
    LDRB_NE
    LDRB_CS
    LDRB_CC
    LDRB_MI
    LDRB_PL
    LDRB_VS
    LDRB_VC
    LDRB_HI
    LDRB_LS
    LDRB_GE
    LDRB_LT
    LDRB_GT
    LDRB_LE
    LDRB
    LDRB_ZZ
    LDRBT_EQ
    LDRBT_NE
    LDRBT_CS
    LDRBT_CC
    LDRBT_MI
    LDRBT_PL
    LDRBT_VS
    LDRBT_VC
    LDRBT_HI
    LDRBT_LS
    LDRBT_GE
    LDRBT_LT
    LDRBT_GT
    LDRBT_LE
    LDRBT
    LDRBT_ZZ
    LDRD_EQ
    LDRD_NE
    LDRD_CS
    LDRD_CC
    LDRD_MI
    LDRD_PL
    LDRD_VS
    LDRD_VC
    LDRD_HI
    LDRD_LS
    LDRD_GE
    LDRD_LT
    LDRD_GT
    LDRD_LE
    LDRD
    LDRD_ZZ
    LDREX_EQ
    LDREX_NE
    LDREX_CS
    LDREX_CC
    LDREX_MI
    LDREX_PL
    LDREX_VS
    LDREX_VC
    LDREX_HI
    LDREX_LS
    LDREX_GE
    LDREX_LT
    LDREX_GT
    LDREX_LE
    LDREX
    LDREX_ZZ
    LDREXB_EQ
    LDREXB_NE
    LDREXB_CS
    LDREXB_CC
    LDREXB_MI
    LDREXB_PL
    LDREXB_VS
    LDREXB_VC
    LDREXB_HI
    LDREXB_LS
    LDREXB_GE
    LDREXB_LT
    LDREXB_GT
    LDREXB_LE
    LDREXB
    LDREXB_ZZ
    LDREXD_EQ
    LDREXD_NE
    LDREXD_CS
    LDREXD_CC
    LDREXD_MI
    LDREXD_PL
    LDREXD_VS
    LDREXD_VC
    LDREXD_HI
    LDREXD_LS
    LDREXD_GE
    LDREXD_LT
    LDREXD_GT
    LDREXD_LE
    LDREXD
    LDREXD_ZZ
    LDREXH_EQ
    LDREXH_NE
    LDREXH_CS
    LDREXH_CC
    LDREXH_MI
    LDREXH_PL
    LDREXH_VS
    LDREXH_VC
    LDREXH_HI
    LDREXH_LS
    LDREXH_GE
    LDREXH_LT
    LDREXH_GT
    LDREXH_LE
    LDREXH
    LDREXH_ZZ
    LDRH_EQ
    LDRH_NE
    LDRH_CS
    LDRH_CC
    LDRH_MI
    LDRH_PL
    LDRH_VS
    LDRH_VC
    LDRH_HI
    LDRH_LS
    LDRH_GE
    LDRH_LT
    LDRH_GT
    LDRH_LE
    LDRH
    LDRH_ZZ
    LDRHT_EQ
    LDRHT_NE
    LDRHT_CS
    LDRHT_CC
    LDRHT_MI
    LDRHT_PL
    LDRHT_VS
    LDRHT_VC
    LDRHT_HI
    LDRHT_LS
    LDRHT_GE
    LDRHT_LT
    LDRHT_GT
    LDRHT_LE
    LDRHT
    LDRHT_ZZ
    LDRSB_EQ
    LDRSB_NE
    LDRSB_CS
    LDRSB_CC
    LDRSB_MI
    LDRSB_PL
    LDRSB_VS
    LDRSB_VC
    LDRSB_HI
    LDRSB_LS
    LDRSB_GE
    LDRSB_LT
    LDRSB_GT
    LDRSB_LE
    LDRSB
    LDRSB_ZZ
    LDRSBT_EQ
    LDRSBT_NE
    LDRSBT_CS
    LDRSBT_CC
    LDRSBT_MI
    LDRSBT_PL
    LDRSBT_VS
    LDRSBT_VC
    LDRSBT_HI
    LDRSBT_LS
    LDRSBT_GE
    LDRSBT_LT
    LDRSBT_GT
    LDRSBT_LE
    LDRSBT
    LDRSBT_ZZ
    LDRSH_EQ
    LDRSH_NE
    LDRSH_CS
    LDRSH_CC
    LDRSH_MI
    LDRSH_PL
    LDRSH_VS
    LDRSH_VC
    LDRSH_HI
    LDRSH_LS
    LDRSH_GE
    LDRSH_LT
    LDRSH_GT
    LDRSH_LE
    LDRSH
    LDRSH_ZZ
    LDRSHT_EQ
    LDRSHT_NE
    LDRSHT_CS
    LDRSHT_CC
    LDRSHT_MI
    LDRSHT_PL
    LDRSHT_VS
    LDRSHT_VC
    LDRSHT_HI
    LDRSHT_LS
    LDRSHT_GE
    LDRSHT_LT
    LDRSHT_GT
    LDRSHT_LE
    LDRSHT
    LDRSHT_ZZ
    LDRT_EQ
    LDRT_NE
    LDRT_CS
    LDRT_CC
    LDRT_MI
    LDRT_PL
    LDRT_VS
    LDRT_VC
    LDRT_HI
    LDRT_LS
    LDRT_GE
    LDRT_LT
    LDRT_GT
    LDRT_LE
    LDRT
    LDRT_ZZ
    LSL_EQ
    LSL_NE
    LSL_CS
    LSL_CC
    LSL_MI
    LSL_PL
    LSL_VS
    LSL_VC
    LSL_HI
    LSL_LS
    LSL_GE
    LSL_LT
    LSL_GT
    LSL_LE
    LSL
    LSL_ZZ
    LSL_S_EQ
    LSL_S_NE
    LSL_S_CS
    LSL_S_CC
    LSL_S_MI
    LSL_S_PL
    LSL_S_VS
    LSL_S_VC
    LSL_S_HI
    LSL_S_LS
    LSL_S_GE
    LSL_S_LT
    LSL_S_GT
    LSL_S_LE
    LSL_S
    LSL_S_ZZ
    LSR_EQ
    LSR_NE
    LSR_CS
    LSR_CC
    LSR_MI
    LSR_PL
    LSR_VS
    LSR_VC
    LSR_HI
    LSR_LS
    LSR_GE
    LSR_LT
    LSR_GT
    LSR_LE
    LSR
    LSR_ZZ
    LSR_S_EQ
    LSR_S_NE
    LSR_S_CS
    LSR_S_CC
    LSR_S_MI
    LSR_S_PL
    LSR_S_VS
    LSR_S_VC
    LSR_S_HI
    LSR_S_LS
    LSR_S_GE
    LSR_S_LT
    LSR_S_GT
    LSR_S_LE
    LSR_S
    LSR_S_ZZ
    MLA_EQ
    MLA_NE
    MLA_CS
    MLA_CC
    MLA_MI
    MLA_PL
    MLA_VS
    MLA_VC
    MLA_HI
    MLA_LS
    MLA_GE
    MLA_LT
    MLA_GT
    MLA_LE
    MLA
    MLA_ZZ
    MLA_S_EQ
    MLA_S_NE
    MLA_S_CS
    MLA_S_CC
    MLA_S_MI
    MLA_S_PL
    MLA_S_VS
    MLA_S_VC
    MLA_S_HI
    MLA_S_LS
    MLA_S_GE
    MLA_S_LT
    MLA_S_GT
    MLA_S_LE
    MLA_S
    MLA_S_ZZ
    MLS_EQ
    MLS_NE
    MLS_CS
    MLS_CC
    MLS_MI
    MLS_PL
    MLS_VS
    MLS_VC
    MLS_HI
    MLS_LS
    MLS_GE
    MLS_LT
    MLS_GT
    MLS_LE
    MLS
    MLS_ZZ
    MOV_EQ
    MOV_NE
    MOV_CS
    MOV_CC
    MOV_MI
    MOV_PL
    MOV_VS
    MOV_VC
    MOV_HI
    MOV_LS
    MOV_GE
    MOV_LT
    MOV_GT
    MOV_LE
    MOV
    MOV_ZZ
    MOV_S_EQ
    MOV_S_NE
    MOV_S_CS
    MOV_S_CC
    MOV_S_MI
    MOV_S_PL
    MOV_S_VS
    MOV_S_VC
    MOV_S_HI
    MOV_S_LS
    MOV_S_GE
    MOV_S_LT
    MOV_S_GT
    MOV_S_LE
    MOV_S
    MOV_S_ZZ
    MOVT_EQ
    MOVT_NE
    MOVT_CS
    MOVT_CC
    MOVT_MI
    MOVT_PL
    MOVT_VS
    MOVT_VC
    MOVT_HI
    MOVT_LS
    MOVT_GE
    MOVT_LT
    MOVT_GT
    MOVT_LE
    MOVT
    MOVT_ZZ
    MOVW_EQ
    MOVW_NE
    MOVW_CS
    MOVW_CC
    MOVW_MI
    MOVW_PL
    MOVW_VS
    MOVW_VC
    MOVW_HI
    MOVW_LS
    MOVW_GE
    MOVW_LT
    MOVW_GT
    MOVW_LE
    MOVW
    MOVW_ZZ
    MRS_EQ
    MRS_NE
    MRS_CS
    MRS_CC
    MRS_MI
    MRS_PL
    MRS_VS
    MRS_VC
    MRS_HI
    MRS_LS
    MRS_GE
    MRS_LT
    MRS_GT
    MRS_LE
    MRS
    MRS_ZZ
    MSR_EQ
    MSR_NE
    MSR_CS
    MSR_CC
    MSR_MI
    MSR_PL
    MSR_VS
    MSR_VC
    MSR_HI
    MSR_LS
    MSR_GE
    MSR_LT
    MSR_GT
    MSR_LE
    MSR
    MSR_ZZ
    MUL_EQ
    MUL_NE
    MUL_CS
    MUL_CC
    MUL_MI
    MUL_PL
    MUL_VS
    MUL_VC
    MUL_HI
    MUL_LS
    MUL_GE
    MUL_LT
    MUL_GT
    MUL_LE
    MUL
    MUL_ZZ
    MUL_S_EQ
    MUL_S_NE
    MUL_S_CS
    MUL_S_CC
    MUL_S_MI
    MUL_S_PL
    MUL_S_VS
    MUL_S_VC
    MUL_S_HI
    MUL_S_LS
    MUL_S_GE
    MUL_S_LT
    MUL_S_GT
    MUL_S_LE
    MUL_S
    MUL_S_ZZ
    MVN_EQ
    MVN_NE
    MVN_CS
    MVN_CC
    MVN_MI
    MVN_PL
    MVN_VS
    MVN_VC
    MVN_HI
    MVN_LS
    MVN_GE
    MVN_LT
    MVN_GT
    MVN_LE
    MVN
    MVN_ZZ
    MVN_S_EQ
    MVN_S_NE
    MVN_S_CS
    MVN_S_CC
    MVN_S_MI
    MVN_S_PL
    MVN_S_VS
    MVN_S_VC
    MVN_S_HI
    MVN_S_LS
    MVN_S_GE
    MVN_S_LT
    MVN_S_GT
    MVN_S_LE
    MVN_S
    MVN_S_ZZ
    NOP_EQ
    NOP_NE
    NOP_CS
    NOP_CC
    NOP_MI
    NOP_PL
    NOP_VS
    NOP_VC
    NOP_HI
    NOP_LS
    NOP_GE
    NOP_LT
    NOP_GT
    NOP_LE
    NOP
    NOP_ZZ
    ORR_EQ
    ORR_NE
    ORR_CS
    ORR_CC
    ORR_MI
    ORR_PL
    ORR_VS
    ORR_VC
    ORR_HI
    ORR_LS
    ORR_GE
    ORR_LT
    ORR_GT
    ORR_LE
    ORR
    ORR_ZZ
    ORR_S_EQ
    ORR_S_NE
    ORR_S_CS
    ORR_S_CC
    ORR_S_MI
    ORR_S_PL
    ORR_S_VS
    ORR_S_VC
    ORR_S_HI
    ORR_S_LS
    ORR_S_GE
    ORR_S_LT
    ORR_S_GT
    ORR_S_LE
    ORR_S
    ORR_S_ZZ
    PKHBT_EQ
    PKHBT_NE
    PKHBT_CS
    PKHBT_CC
    PKHBT_MI
    PKHBT_PL
    PKHBT_VS
    PKHBT_VC
    PKHBT_HI
    PKHBT_LS
    PKHBT_GE
    PKHBT_LT
    PKHBT_GT
    PKHBT_LE
    PKHBT
    PKHBT_ZZ
    PKHTB_EQ
    PKHTB_NE
    PKHTB_CS
    PKHTB_CC
    PKHTB_MI
    PKHTB_PL
    PKHTB_VS
    PKHTB_VC
    PKHTB_HI
    PKHTB_LS
    PKHTB_GE
    PKHTB_LT
    PKHTB_GT
    PKHTB_LE
    PKHTB
    PKHTB_ZZ
    PLD_W
    PLD
    PLI

    POP_EQ
    POP_NE
    POP_CS
    POP_CC
    POP_MI
    POP_PL
    POP_VS
    POP_VC
    POP_HI
    POP_LS
    POP_GE
    POP_LT
    POP_GT
    POP_LE
    POP
    POP_ZZ
    PUSH_EQ
    PUSH_NE
    PUSH_CS
    PUSH_CC
    PUSH_MI
    PUSH_PL
    PUSH_VS
    PUSH_VC
    PUSH_HI
    PUSH_LS
    PUSH_GE
    PUSH_LT
    PUSH_GT
    PUSH_LE
    PUSH
    PUSH_ZZ
    QADD_EQ
    QADD_NE
    QADD_CS
    QADD_CC
    QADD_MI
    QADD_PL
    QADD_VS
    QADD_VC
    QADD_HI
    QADD_LS
    QADD_GE
    QADD_LT
    QADD_GT
    QADD_LE
    QADD
    QADD_ZZ
    QADD16_EQ
    QADD16_NE
    QADD16_CS
    QADD16_CC
    QADD16_MI
    QADD16_PL
    QADD16_VS
    QADD16_VC
    QADD16_HI
    QADD16_LS
    QADD16_GE
    QADD16_LT
    QADD16_GT
    QADD16_LE
    QADD16
    QADD16_ZZ
    QADD8_EQ
    QADD8_NE
    QADD8_CS
    QADD8_CC
    QADD8_MI
    QADD8_PL
    QADD8_VS
    QADD8_VC
    QADD8_HI
    QADD8_LS
    QADD8_GE
    QADD8_LT
    QADD8_GT
    QADD8_LE
    QADD8
    QADD8_ZZ
    QASX_EQ
    QASX_NE
    QASX_CS
    QASX_CC
    QASX_MI
    QASX_PL
    QASX_VS
    QASX_VC
    QASX_HI
    QASX_LS
    QASX_GE
    QASX_LT
    QASX_GT
    QASX_LE
    QASX
    QASX_ZZ
    QDADD_EQ
    QDADD_NE
    QDADD_CS
    QDADD_CC
    QDADD_MI
    QDADD_PL
    QDADD_VS
    QDADD_VC
    QDADD_HI
    QDADD_LS
    QDADD_GE
    QDADD_LT
    QDADD_GT
    QDADD_LE
    QDADD
    QDADD_ZZ
    QDSUB_EQ
    QDSUB_NE
    QDSUB_CS
    QDSUB_CC
    QDSUB_MI
    QDSUB_PL
    QDSUB_VS
    QDSUB_VC
    QDSUB_HI
    QDSUB_LS
    QDSUB_GE
    QDSUB_LT
    QDSUB_GT
    QDSUB_LE
    QDSUB
    QDSUB_ZZ
    QSAX_EQ
    QSAX_NE
    QSAX_CS
    QSAX_CC
    QSAX_MI
    QSAX_PL
    QSAX_VS
    QSAX_VC
    QSAX_HI
    QSAX_LS
    QSAX_GE
    QSAX_LT
    QSAX_GT
    QSAX_LE
    QSAX
    QSAX_ZZ
    QSUB_EQ
    QSUB_NE
    QSUB_CS
    QSUB_CC
    QSUB_MI
    QSUB_PL
    QSUB_VS
    QSUB_VC
    QSUB_HI
    QSUB_LS
    QSUB_GE
    QSUB_LT
    QSUB_GT
    QSUB_LE
    QSUB
    QSUB_ZZ
    QSUB16_EQ
    QSUB16_NE
    QSUB16_CS
    QSUB16_CC
    QSUB16_MI
    QSUB16_PL
    QSUB16_VS
    QSUB16_VC
    QSUB16_HI
    QSUB16_LS
    QSUB16_GE
    QSUB16_LT
    QSUB16_GT
    QSUB16_LE
    QSUB16
    QSUB16_ZZ
    QSUB8_EQ
    QSUB8_NE
    QSUB8_CS
    QSUB8_CC
    QSUB8_MI
    QSUB8_PL
    QSUB8_VS
    QSUB8_VC
    QSUB8_HI
    QSUB8_LS
    QSUB8_GE
    QSUB8_LT
    QSUB8_GT
    QSUB8_LE
    QSUB8
    QSUB8_ZZ
    RBIT_EQ
    RBIT_NE
    RBIT_CS
    RBIT_CC
    RBIT_MI
    RBIT_PL
    RBIT_VS
    RBIT_VC
    RBIT_HI
    RBIT_LS
    RBIT_GE
    RBIT_LT
    RBIT_GT
    RBIT_LE
    RBIT
    RBIT_ZZ
    REV_EQ
    REV_NE
    REV_CS
    REV_CC
    REV_MI
    REV_PL
    REV_VS
    REV_VC
    REV_HI
    REV_LS
    REV_GE
    REV_LT
    REV_GT
    REV_LE
    REV
    REV_ZZ
    REV16_EQ
    REV16_NE
    REV16_CS
    REV16_CC
    REV16_MI
    REV16_PL
    REV16_VS
    REV16_VC
    REV16_HI
    REV16_LS
    REV16_GE
    REV16_LT
    REV16_GT
    REV16_LE
    REV16
    REV16_ZZ
    REVSH_EQ
    REVSH_NE
    REVSH_CS
    REVSH_CC
    REVSH_MI
    REVSH_PL
    REVSH_VS
    REVSH_VC
    REVSH_HI
    REVSH_LS
    REVSH_GE
    REVSH_LT
    REVSH_GT
    REVSH_LE
    REVSH
    REVSH_ZZ
    ROR_EQ
    ROR_NE
    ROR_CS
    ROR_CC
    ROR_MI
    ROR_PL
    ROR_VS
    ROR_VC
    ROR_HI
    ROR_LS
    ROR_GE
    ROR_LT
    ROR_GT
    ROR_LE
    ROR
    ROR_ZZ
    ROR_S_EQ
    ROR_S_NE
    ROR_S_CS
    ROR_S_CC
    ROR_S_MI
    ROR_S_PL
    ROR_S_VS
    ROR_S_VC
    ROR_S_HI
    ROR_S_LS
    ROR_S_GE
    ROR_S_LT
    ROR_S_GT
    ROR_S_LE
    ROR_S
    ROR_S_ZZ
    RRX_EQ
    RRX_NE
    RRX_CS
    RRX_CC
    RRX_MI
    RRX_PL
    RRX_VS
    RRX_VC
    RRX_HI
    RRX_LS
    RRX_GE
    RRX_LT
    RRX_GT
    RRX_LE
    RRX
    RRX_ZZ
    RRX_S_EQ
    RRX_S_NE
    RRX_S_CS
    RRX_S_CC
    RRX_S_MI
    RRX_S_PL
    RRX_S_VS
    RRX_S_VC
    RRX_S_HI
    RRX_S_LS
    RRX_S_GE
    RRX_S_LT
    RRX_S_GT
    RRX_S_LE
    RRX_S
    RRX_S_ZZ
    RSB_EQ
    RSB_NE
    RSB_CS
    RSB_CC
    RSB_MI
    RSB_PL
    RSB_VS
    RSB_VC
    RSB_HI
    RSB_LS
    RSB_GE
    RSB_LT
    RSB_GT
    RSB_LE
    RSB
    RSB_ZZ
    RSB_S_EQ
    RSB_S_NE
    RSB_S_CS
    RSB_S_CC
    RSB_S_MI
    RSB_S_PL
    RSB_S_VS
    RSB_S_VC
    RSB_S_HI
    RSB_S_LS
    RSB_S_GE
    RSB_S_LT
    RSB_S_GT
    RSB_S_LE
    RSB_S
    RSB_S_ZZ
    RSC_EQ
    RSC_NE
    RSC_CS
    RSC_CC
    RSC_MI
    RSC_PL
    RSC_VS
    RSC_VC
    RSC_HI
    RSC_LS
    RSC_GE
    RSC_LT
    RSC_GT
    RSC_LE
    RSC
    RSC_ZZ
    RSC_S_EQ
    RSC_S_NE
    RSC_S_CS
    RSC_S_CC
    RSC_S_MI
    RSC_S_PL
    RSC_S_VS
    RSC_S_VC
    RSC_S_HI
    RSC_S_LS
    RSC_S_GE
    RSC_S_LT
    RSC_S_GT
    RSC_S_LE
    RSC_S
    RSC_S_ZZ
    SADD16_EQ
    SADD16_NE
    SADD16_CS
    SADD16_CC
    SADD16_MI
    SADD16_PL
    SADD16_VS
    SADD16_VC
    SADD16_HI
    SADD16_LS
    SADD16_GE
    SADD16_LT
    SADD16_GT
    SADD16_LE
    SADD16
    SADD16_ZZ
    SADD8_EQ
    SADD8_NE
    SADD8_CS
    SADD8_CC
    SADD8_MI
    SADD8_PL
    SADD8_VS
    SADD8_VC
    SADD8_HI
    SADD8_LS
    SADD8_GE
    SADD8_LT
    SADD8_GT
    SADD8_LE
    SADD8
    SADD8_ZZ
    SASX_EQ
    SASX_NE
    SASX_CS
    SASX_CC
    SASX_MI
    SASX_PL
    SASX_VS
    SASX_VC
    SASX_HI
    SASX_LS
    SASX_GE
    SASX_LT
    SASX_GT
    SASX_LE
    SASX
    SASX_ZZ
    SBC_EQ
    SBC_NE
    SBC_CS
    SBC_CC
    SBC_MI
    SBC_PL
    SBC_VS
    SBC_VC
    SBC_HI
    SBC_LS
    SBC_GE
    SBC_LT
    SBC_GT
    SBC_LE
    SBC
    SBC_ZZ
    SBC_S_EQ
    SBC_S_NE
    SBC_S_CS
    SBC_S_CC
    SBC_S_MI
    SBC_S_PL
    SBC_S_VS
    SBC_S_VC
    SBC_S_HI
    SBC_S_LS
    SBC_S_GE
    SBC_S_LT
    SBC_S_GT
    SBC_S_LE
    SBC_S
    SBC_S_ZZ
    SBFX_EQ
    SBFX_NE
    SBFX_CS
    SBFX_CC
    SBFX_MI
    SBFX_PL
    SBFX_VS
    SBFX_VC
    SBFX_HI
    SBFX_LS
    SBFX_GE
    SBFX_LT
    SBFX_GT
    SBFX_LE
    SBFX
    SBFX_ZZ
    SDIV_EQ
    SDIV_NE
    SDIV_CS
    SDIV_CC
    SDIV_MI
    SDIV_PL
    SDIV_VS
    SDIV_VC
    SDIV_HI
    SDIV_LS
    SDIV_GE
    SDIV_LT
    SDIV_GT
    SDIV_LE
    SDIV
    SDIV_ZZ
    SEL_EQ
    SEL_NE
    SEL_CS
    SEL_CC
    SEL_MI
    SEL_PL
    SEL_VS
    SEL_VC
    SEL_HI
    SEL_LS
    SEL_GE
    SEL_LT
    SEL_GT
    SEL_LE
    SEL
    SEL_ZZ
    SETEND

    SEV_EQ
    SEV_NE
    SEV_CS
    SEV_CC
    SEV_MI
    SEV_PL
    SEV_VS
    SEV_VC
    SEV_HI
    SEV_LS
    SEV_GE
    SEV_LT
    SEV_GT
    SEV_LE
    SEV
    SEV_ZZ
    SHADD16_EQ
    SHADD16_NE
    SHADD16_CS
    SHADD16_CC
    SHADD16_MI
    SHADD16_PL
    SHADD16_VS
    SHADD16_VC
    SHADD16_HI
    SHADD16_LS
    SHADD16_GE
    SHADD16_LT
    SHADD16_GT
    SHADD16_LE
    SHADD16
    SHADD16_ZZ
    SHADD8_EQ
    SHADD8_NE
    SHADD8_CS
    SHADD8_CC
    SHADD8_MI
    SHADD8_PL
    SHADD8_VS
    SHADD8_VC
    SHADD8_HI
    SHADD8_LS
    SHADD8_GE
    SHADD8_LT
    SHADD8_GT
    SHADD8_LE
    SHADD8
    SHADD8_ZZ
    SHASX_EQ
    SHASX_NE
    SHASX_CS
    SHASX_CC
    SHASX_MI
    SHASX_PL
    SHASX_VS
    SHASX_VC
    SHASX_HI
    SHASX_LS
    SHASX_GE
    SHASX_LT
    SHASX_GT
    SHASX_LE
    SHASX
    SHASX_ZZ
    SHSAX_EQ
    SHSAX_NE
    SHSAX_CS
    SHSAX_CC
    SHSAX_MI
    SHSAX_PL
    SHSAX_VS
    SHSAX_VC
    SHSAX_HI
    SHSAX_LS
    SHSAX_GE
    SHSAX_LT
    SHSAX_GT
    SHSAX_LE
    SHSAX
    SHSAX_ZZ
    SHSUB16_EQ
    SHSUB16_NE
    SHSUB16_CS
    SHSUB16_CC
    SHSUB16_MI
    SHSUB16_PL
    SHSUB16_VS
    SHSUB16_VC
    SHSUB16_HI
    SHSUB16_LS
    SHSUB16_GE
    SHSUB16_LT
    SHSUB16_GT
    SHSUB16_LE
    SHSUB16
    SHSUB16_ZZ
    SHSUB8_EQ
    SHSUB8_NE
    SHSUB8_CS
    SHSUB8_CC
    SHSUB8_MI
    SHSUB8_PL
    SHSUB8_VS
    SHSUB8_VC
    SHSUB8_HI
    SHSUB8_LS
    SHSUB8_GE
    SHSUB8_LT
    SHSUB8_GT
    SHSUB8_LE
    SHSUB8
    SHSUB8_ZZ
    SMLABB_EQ
    SMLABB_NE
    SMLABB_CS
    SMLABB_CC
    SMLABB_MI
    SMLABB_PL
    SMLABB_VS
    SMLABB_VC
    SMLABB_HI
    SMLABB_LS
    SMLABB_GE
    SMLABB_LT
    SMLABB_GT
    SMLABB_LE
    SMLABB
    SMLABB_ZZ
    SMLABT_EQ
    SMLABT_NE
    SMLABT_CS
    SMLABT_CC
    SMLABT_MI
    SMLABT_PL
    SMLABT_VS
    SMLABT_VC
    SMLABT_HI
    SMLABT_LS
    SMLABT_GE
    SMLABT_LT
    SMLABT_GT
    SMLABT_LE
    SMLABT
    SMLABT_ZZ
    SMLATB_EQ
    SMLATB_NE
    SMLATB_CS
    SMLATB_CC
    SMLATB_MI
    SMLATB_PL
    SMLATB_VS
    SMLATB_VC
    SMLATB_HI
    SMLATB_LS
    SMLATB_GE
    SMLATB_LT
    SMLATB_GT
    SMLATB_LE
    SMLATB
    SMLATB_ZZ
    SMLATT_EQ
    SMLATT_NE
    SMLATT_CS
    SMLATT_CC
    SMLATT_MI
    SMLATT_PL
    SMLATT_VS
    SMLATT_VC
    SMLATT_HI
    SMLATT_LS
    SMLATT_GE
    SMLATT_LT
    SMLATT_GT
    SMLATT_LE
    SMLATT
    SMLATT_ZZ
    SMLAD_EQ
    SMLAD_NE
    SMLAD_CS
    SMLAD_CC
    SMLAD_MI
    SMLAD_PL
    SMLAD_VS
    SMLAD_VC
    SMLAD_HI
    SMLAD_LS
    SMLAD_GE
    SMLAD_LT
    SMLAD_GT
    SMLAD_LE
    SMLAD
    SMLAD_ZZ
    SMLAD_X_EQ
    SMLAD_X_NE
    SMLAD_X_CS
    SMLAD_X_CC
    SMLAD_X_MI
    SMLAD_X_PL
    SMLAD_X_VS
    SMLAD_X_VC
    SMLAD_X_HI
    SMLAD_X_LS
    SMLAD_X_GE
    SMLAD_X_LT
    SMLAD_X_GT
    SMLAD_X_LE
    SMLAD_X
    SMLAD_X_ZZ
    SMLAL_EQ
    SMLAL_NE
    SMLAL_CS
    SMLAL_CC
    SMLAL_MI
    SMLAL_PL
    SMLAL_VS
    SMLAL_VC
    SMLAL_HI
    SMLAL_LS
    SMLAL_GE
    SMLAL_LT
    SMLAL_GT
    SMLAL_LE
    SMLAL
    SMLAL_ZZ
    SMLAL_S_EQ
    SMLAL_S_NE
    SMLAL_S_CS
    SMLAL_S_CC
    SMLAL_S_MI
    SMLAL_S_PL
    SMLAL_S_VS
    SMLAL_S_VC
    SMLAL_S_HI
    SMLAL_S_LS
    SMLAL_S_GE
    SMLAL_S_LT
    SMLAL_S_GT
    SMLAL_S_LE
    SMLAL_S
    SMLAL_S_ZZ
    SMLALBB_EQ
    SMLALBB_NE
    SMLALBB_CS
    SMLALBB_CC
    SMLALBB_MI
    SMLALBB_PL
    SMLALBB_VS
    SMLALBB_VC
    SMLALBB_HI
    SMLALBB_LS
    SMLALBB_GE
    SMLALBB_LT
    SMLALBB_GT
    SMLALBB_LE
    SMLALBB
    SMLALBB_ZZ
    SMLALBT_EQ
    SMLALBT_NE
    SMLALBT_CS
    SMLALBT_CC
    SMLALBT_MI
    SMLALBT_PL
    SMLALBT_VS
    SMLALBT_VC
    SMLALBT_HI
    SMLALBT_LS
    SMLALBT_GE
    SMLALBT_LT
    SMLALBT_GT
    SMLALBT_LE
    SMLALBT
    SMLALBT_ZZ
    SMLALTB_EQ
    SMLALTB_NE
    SMLALTB_CS
    SMLALTB_CC
    SMLALTB_MI
    SMLALTB_PL
    SMLALTB_VS
    SMLALTB_VC
    SMLALTB_HI
    SMLALTB_LS
    SMLALTB_GE
    SMLALTB_LT
    SMLALTB_GT
    SMLALTB_LE
    SMLALTB
    SMLALTB_ZZ
    SMLALTT_EQ
    SMLALTT_NE
    SMLALTT_CS
    SMLALTT_CC
    SMLALTT_MI
    SMLALTT_PL
    SMLALTT_VS
    SMLALTT_VC
    SMLALTT_HI
    SMLALTT_LS
    SMLALTT_GE
    SMLALTT_LT
    SMLALTT_GT
    SMLALTT_LE
    SMLALTT
    SMLALTT_ZZ
    SMLALD_EQ
    SMLALD_NE
    SMLALD_CS
    SMLALD_CC
    SMLALD_MI
    SMLALD_PL
    SMLALD_VS
    SMLALD_VC
    SMLALD_HI
    SMLALD_LS
    SMLALD_GE
    SMLALD_LT
    SMLALD_GT
    SMLALD_LE
    SMLALD
    SMLALD_ZZ
    SMLALD_X_EQ
    SMLALD_X_NE
    SMLALD_X_CS
    SMLALD_X_CC
    SMLALD_X_MI
    SMLALD_X_PL
    SMLALD_X_VS
    SMLALD_X_VC
    SMLALD_X_HI
    SMLALD_X_LS
    SMLALD_X_GE
    SMLALD_X_LT
    SMLALD_X_GT
    SMLALD_X_LE
    SMLALD_X
    SMLALD_X_ZZ
    SMLAWB_EQ
    SMLAWB_NE
    SMLAWB_CS
    SMLAWB_CC
    SMLAWB_MI
    SMLAWB_PL
    SMLAWB_VS
    SMLAWB_VC
    SMLAWB_HI
    SMLAWB_LS
    SMLAWB_GE
    SMLAWB_LT
    SMLAWB_GT
    SMLAWB_LE
    SMLAWB
    SMLAWB_ZZ
    SMLAWT_EQ
    SMLAWT_NE
    SMLAWT_CS
    SMLAWT_CC
    SMLAWT_MI
    SMLAWT_PL
    SMLAWT_VS
    SMLAWT_VC
    SMLAWT_HI
    SMLAWT_LS
    SMLAWT_GE
    SMLAWT_LT
    SMLAWT_GT
    SMLAWT_LE
    SMLAWT
    SMLAWT_ZZ
    SMLSD_EQ
    SMLSD_NE
    SMLSD_CS
    SMLSD_CC
    SMLSD_MI
    SMLSD_PL
    SMLSD_VS
    SMLSD_VC
    SMLSD_HI
    SMLSD_LS
    SMLSD_GE
    SMLSD_LT
    SMLSD_GT
    SMLSD_LE
    SMLSD
    SMLSD_ZZ
    SMLSD_X_EQ
    SMLSD_X_NE
    SMLSD_X_CS
    SMLSD_X_CC
    SMLSD_X_MI
    SMLSD_X_PL
    SMLSD_X_VS
    SMLSD_X_VC
    SMLSD_X_HI
    SMLSD_X_LS
    SMLSD_X_GE
    SMLSD_X_LT
    SMLSD_X_GT
    SMLSD_X_LE
    SMLSD_X
    SMLSD_X_ZZ
    SMLSLD_EQ
    SMLSLD_NE
    SMLSLD_CS
    SMLSLD_CC
    SMLSLD_MI
    SMLSLD_PL
    SMLSLD_VS
    SMLSLD_VC
    SMLSLD_HI
    SMLSLD_LS
    SMLSLD_GE
    SMLSLD_LT
    SMLSLD_GT
    SMLSLD_LE
    SMLSLD
    SMLSLD_ZZ
    SMLSLD_X_EQ
    SMLSLD_X_NE
    SMLSLD_X_CS
    SMLSLD_X_CC
    SMLSLD_X_MI
    SMLSLD_X_PL
    SMLSLD_X_VS
    SMLSLD_X_VC
    SMLSLD_X_HI
    SMLSLD_X_LS
    SMLSLD_X_GE
    SMLSLD_X_LT
    SMLSLD_X_GT
    SMLSLD_X_LE
    SMLSLD_X
    SMLSLD_X_ZZ
    SMMLA_EQ
    SMMLA_NE
    SMMLA_CS
    SMMLA_CC
    SMMLA_MI
    SMMLA_PL
    SMMLA_VS
    SMMLA_VC
    SMMLA_HI
    SMMLA_LS
    SMMLA_GE
    SMMLA_LT
    SMMLA_GT
    SMMLA_LE
    SMMLA
    SMMLA_ZZ
    SMMLA_R_EQ
    SMMLA_R_NE
    SMMLA_R_CS
    SMMLA_R_CC
    SMMLA_R_MI
    SMMLA_R_PL
    SMMLA_R_VS
    SMMLA_R_VC
    SMMLA_R_HI
    SMMLA_R_LS
    SMMLA_R_GE
    SMMLA_R_LT
    SMMLA_R_GT
    SMMLA_R_LE
    SMMLA_R
    SMMLA_R_ZZ
    SMMLS_EQ
    SMMLS_NE
    SMMLS_CS
    SMMLS_CC
    SMMLS_MI
    SMMLS_PL
    SMMLS_VS
    SMMLS_VC
    SMMLS_HI
    SMMLS_LS
    SMMLS_GE
    SMMLS_LT
    SMMLS_GT
    SMMLS_LE
    SMMLS
    SMMLS_ZZ
    SMMLS_R_EQ
    SMMLS_R_NE
    SMMLS_R_CS
    SMMLS_R_CC
    SMMLS_R_MI
    SMMLS_R_PL
    SMMLS_R_VS
    SMMLS_R_VC
    SMMLS_R_HI
    SMMLS_R_LS
    SMMLS_R_GE
    SMMLS_R_LT
    SMMLS_R_GT
    SMMLS_R_LE
    SMMLS_R
    SMMLS_R_ZZ
    SMMUL_EQ
    SMMUL_NE
    SMMUL_CS
    SMMUL_CC
    SMMUL_MI
    SMMUL_PL
    SMMUL_VS
    SMMUL_VC
    SMMUL_HI
    SMMUL_LS
    SMMUL_GE
    SMMUL_LT
    SMMUL_GT
    SMMUL_LE
    SMMUL
    SMMUL_ZZ
    SMMUL_R_EQ
    SMMUL_R_NE
    SMMUL_R_CS
    SMMUL_R_CC
    SMMUL_R_MI
    SMMUL_R_PL
    SMMUL_R_VS
    SMMUL_R_VC
    SMMUL_R_HI
    SMMUL_R_LS
    SMMUL_R_GE
    SMMUL_R_LT
    SMMUL_R_GT
    SMMUL_R_LE
    SMMUL_R
    SMMUL_R_ZZ
    SMUAD_EQ
    SMUAD_NE
    SMUAD_CS
    SMUAD_CC
    SMUAD_MI
    SMUAD_PL
    SMUAD_VS
    SMUAD_VC
    SMUAD_HI
    SMUAD_LS
    SMUAD_GE
    SMUAD_LT
    SMUAD_GT
    SMUAD_LE
    SMUAD
    SMUAD_ZZ
    SMUAD_X_EQ
    SMUAD_X_NE
    SMUAD_X_CS
    SMUAD_X_CC
    SMUAD_X_MI
    SMUAD_X_PL
    SMUAD_X_VS
    SMUAD_X_VC
    SMUAD_X_HI
    SMUAD_X_LS
    SMUAD_X_GE
    SMUAD_X_LT
    SMUAD_X_GT
    SMUAD_X_LE
    SMUAD_X
    SMUAD_X_ZZ
    SMULBB_EQ
    SMULBB_NE
    SMULBB_CS
    SMULBB_CC
    SMULBB_MI
    SMULBB_PL
    SMULBB_VS
    SMULBB_VC
    SMULBB_HI
    SMULBB_LS
    SMULBB_GE
    SMULBB_LT
    SMULBB_GT
    SMULBB_LE
    SMULBB
    SMULBB_ZZ
    SMULBT_EQ
    SMULBT_NE
    SMULBT_CS
    SMULBT_CC
    SMULBT_MI
    SMULBT_PL
    SMULBT_VS
    SMULBT_VC
    SMULBT_HI
    SMULBT_LS
    SMULBT_GE
    SMULBT_LT
    SMULBT_GT
    SMULBT_LE
    SMULBT
    SMULBT_ZZ
    SMULTB_EQ
    SMULTB_NE
    SMULTB_CS
    SMULTB_CC
    SMULTB_MI
    SMULTB_PL
    SMULTB_VS
    SMULTB_VC
    SMULTB_HI
    SMULTB_LS
    SMULTB_GE
    SMULTB_LT
    SMULTB_GT
    SMULTB_LE
    SMULTB
    SMULTB_ZZ
    SMULTT_EQ
    SMULTT_NE
    SMULTT_CS
    SMULTT_CC
    SMULTT_MI
    SMULTT_PL
    SMULTT_VS
    SMULTT_VC
    SMULTT_HI
    SMULTT_LS
    SMULTT_GE
    SMULTT_LT
    SMULTT_GT
    SMULTT_LE
    SMULTT
    SMULTT_ZZ
    SMULL_EQ
    SMULL_NE
    SMULL_CS
    SMULL_CC
    SMULL_MI
    SMULL_PL
    SMULL_VS
    SMULL_VC
    SMULL_HI
    SMULL_LS
    SMULL_GE
    SMULL_LT
    SMULL_GT
    SMULL_LE
    SMULL
    SMULL_ZZ
    SMULL_S_EQ
    SMULL_S_NE
    SMULL_S_CS
    SMULL_S_CC
    SMULL_S_MI
    SMULL_S_PL
    SMULL_S_VS
    SMULL_S_VC
    SMULL_S_HI
    SMULL_S_LS
    SMULL_S_GE
    SMULL_S_LT
    SMULL_S_GT
    SMULL_S_LE
    SMULL_S
    SMULL_S_ZZ
    SMULWB_EQ
    SMULWB_NE
    SMULWB_CS
    SMULWB_CC
    SMULWB_MI
    SMULWB_PL
    SMULWB_VS
    SMULWB_VC
    SMULWB_HI
    SMULWB_LS
    SMULWB_GE
    SMULWB_LT
    SMULWB_GT
    SMULWB_LE
    SMULWB
    SMULWB_ZZ
    SMULWT_EQ
    SMULWT_NE
    SMULWT_CS
    SMULWT_CC
    SMULWT_MI
    SMULWT_PL
    SMULWT_VS
    SMULWT_VC
    SMULWT_HI
    SMULWT_LS
    SMULWT_GE
    SMULWT_LT
    SMULWT_GT
    SMULWT_LE
    SMULWT
    SMULWT_ZZ
    SMUSD_EQ
    SMUSD_NE
    SMUSD_CS
    SMUSD_CC
    SMUSD_MI
    SMUSD_PL
    SMUSD_VS
    SMUSD_VC
    SMUSD_HI
    SMUSD_LS
    SMUSD_GE
    SMUSD_LT
    SMUSD_GT
    SMUSD_LE
    SMUSD
    SMUSD_ZZ
    SMUSD_X_EQ
    SMUSD_X_NE
    SMUSD_X_CS
    SMUSD_X_CC
    SMUSD_X_MI
    SMUSD_X_PL
    SMUSD_X_VS
    SMUSD_X_VC
    SMUSD_X_HI
    SMUSD_X_LS
    SMUSD_X_GE
    SMUSD_X_LT
    SMUSD_X_GT
    SMUSD_X_LE
    SMUSD_X
    SMUSD_X_ZZ
    SSAT_EQ
    SSAT_NE
    SSAT_CS
    SSAT_CC
    SSAT_MI
    SSAT_PL
    SSAT_VS
    SSAT_VC
    SSAT_HI
    SSAT_LS
    SSAT_GE
    SSAT_LT
    SSAT_GT
    SSAT_LE
    SSAT
    SSAT_ZZ
    SSAT16_EQ
    SSAT16_NE
    SSAT16_CS
    SSAT16_CC
    SSAT16_MI
    SSAT16_PL
    SSAT16_VS
    SSAT16_VC
    SSAT16_HI
    SSAT16_LS
    SSAT16_GE
    SSAT16_LT
    SSAT16_GT
    SSAT16_LE
    SSAT16
    SSAT16_ZZ
    SSAX_EQ
    SSAX_NE
    SSAX_CS
    SSAX_CC
    SSAX_MI
    SSAX_PL
    SSAX_VS
    SSAX_VC
    SSAX_HI
    SSAX_LS
    SSAX_GE
    SSAX_LT
    SSAX_GT
    SSAX_LE
    SSAX
    SSAX_ZZ
    SSUB16_EQ
    SSUB16_NE
    SSUB16_CS
    SSUB16_CC
    SSUB16_MI
    SSUB16_PL
    SSUB16_VS
    SSUB16_VC
    SSUB16_HI
    SSUB16_LS
    SSUB16_GE
    SSUB16_LT
    SSUB16_GT
    SSUB16_LE
    SSUB16
    SSUB16_ZZ
    SSUB8_EQ
    SSUB8_NE
    SSUB8_CS
    SSUB8_CC
    SSUB8_MI
    SSUB8_PL
    SSUB8_VS
    SSUB8_VC
    SSUB8_HI
    SSUB8_LS
    SSUB8_GE
    SSUB8_LT
    SSUB8_GT
    SSUB8_LE
    SSUB8
    SSUB8_ZZ
    STM_EQ
    STM_NE
    STM_CS
    STM_CC
    STM_MI
    STM_PL
    STM_VS
    STM_VC
    STM_HI
    STM_LS
    STM_GE
    STM_LT
    STM_GT
    STM_LE
    STM
    STM_ZZ
    STMDA_EQ
    STMDA_NE
    STMDA_CS
    STMDA_CC
    STMDA_MI
    STMDA_PL
    STMDA_VS
    STMDA_VC
    STMDA_HI
    STMDA_LS
    STMDA_GE
    STMDA_LT
    STMDA_GT
    STMDA_LE
    STMDA
    STMDA_ZZ
    STMDB_EQ
    STMDB_NE
    STMDB_CS
    STMDB_CC
    STMDB_MI
    STMDB_PL
    STMDB_VS
    STMDB_VC
    STMDB_HI
    STMDB_LS
    STMDB_GE
    STMDB_LT
    STMDB_GT
    STMDB_LE
    STMDB
    STMDB_ZZ
    STMIB_EQ
    STMIB_NE
    STMIB_CS
    STMIB_CC
    STMIB_MI
    STMIB_PL
    STMIB_VS
    STMIB_VC
    STMIB_HI
    STMIB_LS
    STMIB_GE
    STMIB_LT
    STMIB_GT
    STMIB_LE
    STMIB
    STMIB_ZZ
    STR_EQ
    STR_NE
    STR_CS
    STR_CC
    STR_MI
    STR_PL
    STR_VS
    STR_VC
    STR_HI
    STR_LS
    STR_GE
    STR_LT
    STR_GT
    STR_LE
    STR
    STR_ZZ
    STRB_EQ
    STRB_NE
    STRB_CS
    STRB_CC
    STRB_MI
    STRB_PL
    STRB_VS
    STRB_VC
    STRB_HI
    STRB_LS
    STRB_GE
    STRB_LT
    STRB_GT
    STRB_LE
    STRB
    STRB_ZZ
    STRBT_EQ
    STRBT_NE
    STRBT_CS
    STRBT_CC
    STRBT_MI
    STRBT_PL
    STRBT_VS
    STRBT_VC
    STRBT_HI
    STRBT_LS
    STRBT_GE
    STRBT_LT
    STRBT_GT
    STRBT_LE
    STRBT
    STRBT_ZZ
    STRD_EQ
    STRD_NE
    STRD_CS
    STRD_CC
    STRD_MI
    STRD_PL
    STRD_VS
    STRD_VC
    STRD_HI
    STRD_LS
    STRD_GE
    STRD_LT
    STRD_GT
    STRD_LE
    STRD
    STRD_ZZ
    STREX_EQ
    STREX_NE
    STREX_CS
    STREX_CC
    STREX_MI
    STREX_PL
    STREX_VS
    STREX_VC
    STREX_HI
    STREX_LS
    STREX_GE
    STREX_LT
    STREX_GT
    STREX_LE
    STREX
    STREX_ZZ
    STREXB_EQ
    STREXB_NE
    STREXB_CS
    STREXB_CC
    STREXB_MI
    STREXB_PL
    STREXB_VS
    STREXB_VC
    STREXB_HI
    STREXB_LS
    STREXB_GE
    STREXB_LT
    STREXB_GT
    STREXB_LE
    STREXB
    STREXB_ZZ
    STREXD_EQ
    STREXD_NE
    STREXD_CS
    STREXD_CC
    STREXD_MI
    STREXD_PL
    STREXD_VS
    STREXD_VC
    STREXD_HI
    STREXD_LS
    STREXD_GE
    STREXD_LT
    STREXD_GT
    STREXD_LE
    STREXD
    STREXD_ZZ
    STREXH_EQ
    STREXH_NE
    STREXH_CS
    STREXH_CC
    STREXH_MI
    STREXH_PL
    STREXH_VS
    STREXH_VC
    STREXH_HI
    STREXH_LS
    STREXH_GE
    STREXH_LT
    STREXH_GT
    STREXH_LE
    STREXH
    STREXH_ZZ
    STRH_EQ
    STRH_NE
    STRH_CS
    STRH_CC
    STRH_MI
    STRH_PL
    STRH_VS
    STRH_VC
    STRH_HI
    STRH_LS
    STRH_GE
    STRH_LT
    STRH_GT
    STRH_LE
    STRH
    STRH_ZZ
    STRHT_EQ
    STRHT_NE
    STRHT_CS
    STRHT_CC
    STRHT_MI
    STRHT_PL
    STRHT_VS
    STRHT_VC
    STRHT_HI
    STRHT_LS
    STRHT_GE
    STRHT_LT
    STRHT_GT
    STRHT_LE
    STRHT
    STRHT_ZZ
    STRT_EQ
    STRT_NE
    STRT_CS
    STRT_CC
    STRT_MI
    STRT_PL
    STRT_VS
    STRT_VC
    STRT_HI
    STRT_LS
    STRT_GE
    STRT_LT
    STRT_GT
    STRT_LE
    STRT
    STRT_ZZ
    SUB_EQ
    SUB_NE
    SUB_CS
    SUB_CC
    SUB_MI
    SUB_PL
    SUB_VS
    SUB_VC
    SUB_HI
    SUB_LS
    SUB_GE
    SUB_LT
    SUB_GT
    SUB_LE
    SUB
    SUB_ZZ
    SUB_S_EQ
    SUB_S_NE
    SUB_S_CS
    SUB_S_CC
    SUB_S_MI
    SUB_S_PL
    SUB_S_VS
    SUB_S_VC
    SUB_S_HI
    SUB_S_LS
    SUB_S_GE
    SUB_S_LT
    SUB_S_GT
    SUB_S_LE
    SUB_S
    SUB_S_ZZ
    SVC_EQ
    SVC_NE
    SVC_CS
    SVC_CC
    SVC_MI
    SVC_PL
    SVC_VS
    SVC_VC
    SVC_HI
    SVC_LS
    SVC_GE
    SVC_LT
    SVC_GT
    SVC_LE
    SVC
    SVC_ZZ
    SWP_EQ
    SWP_NE
    SWP_CS
    SWP_CC
    SWP_MI
    SWP_PL
    SWP_VS
    SWP_VC
    SWP_HI
    SWP_LS
    SWP_GE
    SWP_LT
    SWP_GT
    SWP_LE
    SWP
    SWP_ZZ
    SWP_B_EQ
    SWP_B_NE
    SWP_B_CS
    SWP_B_CC
    SWP_B_MI
    SWP_B_PL
    SWP_B_VS
    SWP_B_VC
    SWP_B_HI
    SWP_B_LS
    SWP_B_GE
    SWP_B_LT
    SWP_B_GT
    SWP_B_LE
    SWP_B
    SWP_B_ZZ
    SXTAB_EQ
    SXTAB_NE
    SXTAB_CS
    SXTAB_CC
    SXTAB_MI
    SXTAB_PL
    SXTAB_VS
    SXTAB_VC
    SXTAB_HI
    SXTAB_LS
    SXTAB_GE
    SXTAB_LT
    SXTAB_GT
    SXTAB_LE
    SXTAB
    SXTAB_ZZ
    SXTAB16_EQ
    SXTAB16_NE
    SXTAB16_CS
    SXTAB16_CC
    SXTAB16_MI
    SXTAB16_PL
    SXTAB16_VS
    SXTAB16_VC
    SXTAB16_HI
    SXTAB16_LS
    SXTAB16_GE
    SXTAB16_LT
    SXTAB16_GT
    SXTAB16_LE
    SXTAB16
    SXTAB16_ZZ
    SXTAH_EQ
    SXTAH_NE
    SXTAH_CS
    SXTAH_CC
    SXTAH_MI
    SXTAH_PL
    SXTAH_VS
    SXTAH_VC
    SXTAH_HI
    SXTAH_LS
    SXTAH_GE
    SXTAH_LT
    SXTAH_GT
    SXTAH_LE
    SXTAH
    SXTAH_ZZ
    SXTB_EQ
    SXTB_NE
    SXTB_CS
    SXTB_CC
    SXTB_MI
    SXTB_PL
    SXTB_VS
    SXTB_VC
    SXTB_HI
    SXTB_LS
    SXTB_GE
    SXTB_LT
    SXTB_GT
    SXTB_LE
    SXTB
    SXTB_ZZ
    SXTB16_EQ
    SXTB16_NE
    SXTB16_CS
    SXTB16_CC
    SXTB16_MI
    SXTB16_PL
    SXTB16_VS
    SXTB16_VC
    SXTB16_HI
    SXTB16_LS
    SXTB16_GE
    SXTB16_LT
    SXTB16_GT
    SXTB16_LE
    SXTB16
    SXTB16_ZZ
    SXTH_EQ
    SXTH_NE
    SXTH_CS
    SXTH_CC
    SXTH_MI
    SXTH_PL
    SXTH_VS
    SXTH_VC
    SXTH_HI
    SXTH_LS
    SXTH_GE
    SXTH_LT
    SXTH_GT
    SXTH_LE
    SXTH
    SXTH_ZZ
    TEQ_EQ
    TEQ_NE
    TEQ_CS
    TEQ_CC
    TEQ_MI
    TEQ_PL
    TEQ_VS
    TEQ_VC
    TEQ_HI
    TEQ_LS
    TEQ_GE
    TEQ_LT
    TEQ_GT
    TEQ_LE
    TEQ
    TEQ_ZZ
    TST_EQ
    TST_NE
    TST_CS
    TST_CC
    TST_MI
    TST_PL
    TST_VS
    TST_VC
    TST_HI
    TST_LS
    TST_GE
    TST_LT
    TST_GT
    TST_LE
    TST
    TST_ZZ
    UADD16_EQ
    UADD16_NE
    UADD16_CS
    UADD16_CC
    UADD16_MI
    UADD16_PL
    UADD16_VS
    UADD16_VC
    UADD16_HI
    UADD16_LS
    UADD16_GE
    UADD16_LT
    UADD16_GT
    UADD16_LE
    UADD16
    UADD16_ZZ
    UADD8_EQ
    UADD8_NE
    UADD8_CS
    UADD8_CC
    UADD8_MI
    UADD8_PL
    UADD8_VS
    UADD8_VC
    UADD8_HI
    UADD8_LS
    UADD8_GE
    UADD8_LT
    UADD8_GT
    UADD8_LE
    UADD8
    UADD8_ZZ
    UASX_EQ
    UASX_NE
    UASX_CS
    UASX_CC
    UASX_MI
    UASX_PL
    UASX_VS
    UASX_VC
    UASX_HI
    UASX_LS
    UASX_GE
    UASX_LT
    UASX_GT
    UASX_LE
    UASX
    UASX_ZZ
    UBFX_EQ
    UBFX_NE
    UBFX_CS
    UBFX_CC
    UBFX_MI
    UBFX_PL
    UBFX_VS
    UBFX_VC
    UBFX_HI
    UBFX_LS
    UBFX_GE
    UBFX_LT
    UBFX_GT
    UBFX_LE
    UBFX
    UBFX_ZZ
    UDIV_EQ
    UDIV_NE
    UDIV_CS
    UDIV_CC
    UDIV_MI
    UDIV_PL
    UDIV_VS
    UDIV_VC
    UDIV_HI
    UDIV_LS
    UDIV_GE
    UDIV_LT
    UDIV_GT
    UDIV_LE
    UDIV
    UDIV_ZZ
    UHADD16_EQ
    UHADD16_NE
    UHADD16_CS
    UHADD16_CC
    UHADD16_MI
    UHADD16_PL
    UHADD16_VS
    UHADD16_VC
    UHADD16_HI
    UHADD16_LS
    UHADD16_GE
    UHADD16_LT
    UHADD16_GT
    UHADD16_LE
    UHADD16
    UHADD16_ZZ
    UHADD8_EQ
    UHADD8_NE
    UHADD8_CS
    UHADD8_CC
    UHADD8_MI
    UHADD8_PL
    UHADD8_VS
    UHADD8_VC
    UHADD8_HI
    UHADD8_LS
    UHADD8_GE
    UHADD8_LT
    UHADD8_GT
    UHADD8_LE
    UHADD8
    UHADD8_ZZ
    UHASX_EQ
    UHASX_NE
    UHASX_CS
    UHASX_CC
    UHASX_MI
    UHASX_PL
    UHASX_VS
    UHASX_VC
    UHASX_HI
    UHASX_LS
    UHASX_GE
    UHASX_LT
    UHASX_GT
    UHASX_LE
    UHASX
    UHASX_ZZ
    UHSAX_EQ
    UHSAX_NE
    UHSAX_CS
    UHSAX_CC
    UHSAX_MI
    UHSAX_PL
    UHSAX_VS
    UHSAX_VC
    UHSAX_HI
    UHSAX_LS
    UHSAX_GE
    UHSAX_LT
    UHSAX_GT
    UHSAX_LE
    UHSAX
    UHSAX_ZZ
    UHSUB16_EQ
    UHSUB16_NE
    UHSUB16_CS
    UHSUB16_CC
    UHSUB16_MI
    UHSUB16_PL
    UHSUB16_VS
    UHSUB16_VC
    UHSUB16_HI
    UHSUB16_LS
    UHSUB16_GE
    UHSUB16_LT
    UHSUB16_GT
    UHSUB16_LE
    UHSUB16
    UHSUB16_ZZ
    UHSUB8_EQ
    UHSUB8_NE
    UHSUB8_CS
    UHSUB8_CC
    UHSUB8_MI
    UHSUB8_PL
    UHSUB8_VS
    UHSUB8_VC
    UHSUB8_HI
    UHSUB8_LS
    UHSUB8_GE
    UHSUB8_LT
    UHSUB8_GT
    UHSUB8_LE
    UHSUB8
    UHSUB8_ZZ
    UMAAL_EQ
    UMAAL_NE
    UMAAL_CS
    UMAAL_CC
    UMAAL_MI
    UMAAL_PL
    UMAAL_VS
    UMAAL_VC
    UMAAL_HI
    UMAAL_LS
    UMAAL_GE
    UMAAL_LT
    UMAAL_GT
    UMAAL_LE
    UMAAL
    UMAAL_ZZ
    UMLAL_EQ
    UMLAL_NE
    UMLAL_CS
    UMLAL_CC
    UMLAL_MI
    UMLAL_PL
    UMLAL_VS
    UMLAL_VC
    UMLAL_HI
    UMLAL_LS
    UMLAL_GE
    UMLAL_LT
    UMLAL_GT
    UMLAL_LE
    UMLAL
    UMLAL_ZZ
    UMLAL_S_EQ
    UMLAL_S_NE
    UMLAL_S_CS
    UMLAL_S_CC
    UMLAL_S_MI
    UMLAL_S_PL
    UMLAL_S_VS
    UMLAL_S_VC
    UMLAL_S_HI
    UMLAL_S_LS
    UMLAL_S_GE
    UMLAL_S_LT
    UMLAL_S_GT
    UMLAL_S_LE
    UMLAL_S
    UMLAL_S_ZZ
    UMULL_EQ
    UMULL_NE
    UMULL_CS
    UMULL_CC
    UMULL_MI
    UMULL_PL
    UMULL_VS
    UMULL_VC
    UMULL_HI
    UMULL_LS
    UMULL_GE
    UMULL_LT
    UMULL_GT
    UMULL_LE
    UMULL
    UMULL_ZZ
    UMULL_S_EQ
    UMULL_S_NE
    UMULL_S_CS
    UMULL_S_CC
    UMULL_S_MI
    UMULL_S_PL
    UMULL_S_VS
    UMULL_S_VC
    UMULL_S_HI
    UMULL_S_LS
    UMULL_S_GE
    UMULL_S_LT
    UMULL_S_GT
    UMULL_S_LE
    UMULL_S
    UMULL_S_ZZ
    UNDEF

    UQADD16_EQ
    UQADD16_NE
    UQADD16_CS
    UQADD16_CC
    UQADD16_MI
    UQADD16_PL
    UQADD16_VS
    UQADD16_VC
    UQADD16_HI
    UQADD16_LS
    UQADD16_GE
    UQADD16_LT
    UQADD16_GT
    UQADD16_LE
    UQADD16
    UQADD16_ZZ
    UQADD8_EQ
    UQADD8_NE
    UQADD8_CS
    UQADD8_CC
    UQADD8_MI
    UQADD8_PL
    UQADD8_VS
    UQADD8_VC
    UQADD8_HI
    UQADD8_LS
    UQADD8_GE
    UQADD8_LT
    UQADD8_GT
    UQADD8_LE
    UQADD8
    UQADD8_ZZ
    UQASX_EQ
    UQASX_NE
    UQASX_CS
    UQASX_CC
    UQASX_MI
    UQASX_PL
    UQASX_VS
    UQASX_VC
    UQASX_HI
    UQASX_LS
    UQASX_GE
    UQASX_LT
    UQASX_GT
    UQASX_LE
    UQASX
    UQASX_ZZ
    UQSAX_EQ
    UQSAX_NE
    UQSAX_CS
    UQSAX_CC
    UQSAX_MI
    UQSAX_PL
    UQSAX_VS
    UQSAX_VC
    UQSAX_HI
    UQSAX_LS
    UQSAX_GE
    UQSAX_LT
    UQSAX_GT
    UQSAX_LE
    UQSAX
    UQSAX_ZZ
    UQSUB16_EQ
    UQSUB16_NE
    UQSUB16_CS
    UQSUB16_CC
    UQSUB16_MI
    UQSUB16_PL
    UQSUB16_VS
    UQSUB16_VC
    UQSUB16_HI
    UQSUB16_LS
    UQSUB16_GE
    UQSUB16_LT
    UQSUB16_GT
    UQSUB16_LE
    UQSUB16
    UQSUB16_ZZ
    UQSUB8_EQ
    UQSUB8_NE
    UQSUB8_CS
    UQSUB8_CC
    UQSUB8_MI
    UQSUB8_PL
    UQSUB8_VS
    UQSUB8_VC
    UQSUB8_HI
    UQSUB8_LS
    UQSUB8_GE
    UQSUB8_LT
    UQSUB8_GT
    UQSUB8_LE
    UQSUB8
    UQSUB8_ZZ
    USAD8_EQ
    USAD8_NE
    USAD8_CS
    USAD8_CC
    USAD8_MI
    USAD8_PL
    USAD8_VS
    USAD8_VC
    USAD8_HI
    USAD8_LS
    USAD8_GE
    USAD8_LT
    USAD8_GT
    USAD8_LE
    USAD8
    USAD8_ZZ
    USADA8_EQ
    USADA8_NE
    USADA8_CS
    USADA8_CC
    USADA8_MI
    USADA8_PL
    USADA8_VS
    USADA8_VC
    USADA8_HI
    USADA8_LS
    USADA8_GE
    USADA8_LT
    USADA8_GT
    USADA8_LE
    USADA8
    USADA8_ZZ
    USAT_EQ
    USAT_NE
    USAT_CS
    USAT_CC
    USAT_MI
    USAT_PL
    USAT_VS
    USAT_VC
    USAT_HI
    USAT_LS
    USAT_GE
    USAT_LT
    USAT_GT
    USAT_LE
    USAT
    USAT_ZZ
    USAT16_EQ
    USAT16_NE
    USAT16_CS
    USAT16_CC
    USAT16_MI
    USAT16_PL
    USAT16_VS
    USAT16_VC
    USAT16_HI
    USAT16_LS
    USAT16_GE
    USAT16_LT
    USAT16_GT
    USAT16_LE
    USAT16
    USAT16_ZZ
    USAX_EQ
    USAX_NE
    USAX_CS
    USAX_CC
    USAX_MI
    USAX_PL
    USAX_VS
    USAX_VC
    USAX_HI
    USAX_LS
    USAX_GE
    USAX_LT
    USAX_GT
    USAX_LE
    USAX
    USAX_ZZ
    USUB16_EQ
    USUB16_NE
    USUB16_CS
    USUB16_CC
    USUB16_MI
    USUB16_PL
    USUB16_VS
    USUB16_VC
    USUB16_HI
    USUB16_LS
    USUB16_GE
    USUB16_LT
    USUB16_GT
    USUB16_LE
    USUB16
    USUB16_ZZ
    USUB8_EQ
    USUB8_NE
    USUB8_CS
    USUB8_CC
    USUB8_MI
    USUB8_PL
    USUB8_VS
    USUB8_VC
    USUB8_HI
    USUB8_LS
    USUB8_GE
    USUB8_LT
    USUB8_GT
    USUB8_LE
    USUB8
    USUB8_ZZ
    UXTAB_EQ
    UXTAB_NE
    UXTAB_CS
    UXTAB_CC
    UXTAB_MI
    UXTAB_PL
    UXTAB_VS
    UXTAB_VC
    UXTAB_HI
    UXTAB_LS
    UXTAB_GE
    UXTAB_LT
    UXTAB_GT
    UXTAB_LE
    UXTAB
    UXTAB_ZZ
    UXTAB16_EQ
    UXTAB16_NE
    UXTAB16_CS
    UXTAB16_CC
    UXTAB16_MI
    UXTAB16_PL
    UXTAB16_VS
    UXTAB16_VC
    UXTAB16_HI
    UXTAB16_LS
    UXTAB16_GE
    UXTAB16_LT
    UXTAB16_GT
    UXTAB16_LE
    UXTAB16
    UXTAB16_ZZ
    UXTAH_EQ
    UXTAH_NE
    UXTAH_CS
    UXTAH_CC
    UXTAH_MI
    UXTAH_PL
    UXTAH_VS
    UXTAH_VC
    UXTAH_HI
    UXTAH_LS
    UXTAH_GE
    UXTAH_LT
    UXTAH_GT
    UXTAH_LE
    UXTAH
    UXTAH_ZZ
    UXTB_EQ
    UXTB_NE
    UXTB_CS
    UXTB_CC
    UXTB_MI
    UXTB_PL
    UXTB_VS
    UXTB_VC
    UXTB_HI
    UXTB_LS
    UXTB_GE
    UXTB_LT
    UXTB_GT
    UXTB_LE
    UXTB
    UXTB_ZZ
    UXTB16_EQ
    UXTB16_NE
    UXTB16_CS
    UXTB16_CC
    UXTB16_MI
    UXTB16_PL
    UXTB16_VS
    UXTB16_VC
    UXTB16_HI
    UXTB16_LS
    UXTB16_GE
    UXTB16_LT
    UXTB16_GT
    UXTB16_LE
    UXTB16
    UXTB16_ZZ
    UXTH_EQ
    UXTH_NE
    UXTH_CS
    UXTH_CC
    UXTH_MI
    UXTH_PL
    UXTH_VS
    UXTH_VC
    UXTH_HI
    UXTH_LS
    UXTH_GE
    UXTH_LT
    UXTH_GT
    UXTH_LE
    UXTH
    UXTH_ZZ
    VABS_EQ_F32
    VABS_NE_F32
    VABS_CS_F32
    VABS_CC_F32
    VABS_MI_F32
    VABS_PL_F32
    VABS_VS_F32
    VABS_VC_F32
    VABS_HI_F32
    VABS_LS_F32
    VABS_GE_F32
    VABS_LT_F32
    VABS_GT_F32
    VABS_LE_F32
    VABS_F32
    VABS_ZZ_F32
    VABS_EQ_F64
    VABS_NE_F64
    VABS_CS_F64
    VABS_CC_F64
    VABS_MI_F64
    VABS_PL_F64
    VABS_VS_F64
    VABS_VC_F64
    VABS_HI_F64
    VABS_LS_F64
    VABS_GE_F64
    VABS_LT_F64
    VABS_GT_F64
    VABS_LE_F64
    VABS_F64
    VABS_ZZ_F64
    VADD_EQ_F32
    VADD_NE_F32
    VADD_CS_F32
    VADD_CC_F32
    VADD_MI_F32
    VADD_PL_F32
    VADD_VS_F32
    VADD_VC_F32
    VADD_HI_F32
    VADD_LS_F32
    VADD_GE_F32
    VADD_LT_F32
    VADD_GT_F32
    VADD_LE_F32
    VADD_F32
    VADD_ZZ_F32
    VADD_EQ_F64
    VADD_NE_F64
    VADD_CS_F64
    VADD_CC_F64
    VADD_MI_F64
    VADD_PL_F64
    VADD_VS_F64
    VADD_VC_F64
    VADD_HI_F64
    VADD_LS_F64
    VADD_GE_F64
    VADD_LT_F64
    VADD_GT_F64
    VADD_LE_F64
    VADD_F64
    VADD_ZZ_F64
    VCMP_EQ_F32
    VCMP_NE_F32
    VCMP_CS_F32
    VCMP_CC_F32
    VCMP_MI_F32
    VCMP_PL_F32
    VCMP_VS_F32
    VCMP_VC_F32
    VCMP_HI_F32
    VCMP_LS_F32
    VCMP_GE_F32
    VCMP_LT_F32
    VCMP_GT_F32
    VCMP_LE_F32
    VCMP_F32
    VCMP_ZZ_F32
    VCMP_EQ_F64
    VCMP_NE_F64
    VCMP_CS_F64
    VCMP_CC_F64
    VCMP_MI_F64
    VCMP_PL_F64
    VCMP_VS_F64
    VCMP_VC_F64
    VCMP_HI_F64
    VCMP_LS_F64
    VCMP_GE_F64
    VCMP_LT_F64
    VCMP_GT_F64
    VCMP_LE_F64
    VCMP_F64
    VCMP_ZZ_F64
    VCMP_E_EQ_F32
    VCMP_E_NE_F32
    VCMP_E_CS_F32
    VCMP_E_CC_F32
    VCMP_E_MI_F32
    VCMP_E_PL_F32
    VCMP_E_VS_F32
    VCMP_E_VC_F32
    VCMP_E_HI_F32
    VCMP_E_LS_F32
    VCMP_E_GE_F32
    VCMP_E_LT_F32
    VCMP_E_GT_F32
    VCMP_E_LE_F32
    VCMP_E_F32
    VCMP_E_ZZ_F32
    VCMP_E_EQ_F64
    VCMP_E_NE_F64
    VCMP_E_CS_F64
    VCMP_E_CC_F64
    VCMP_E_MI_F64
    VCMP_E_PL_F64
    VCMP_E_VS_F64
    VCMP_E_VC_F64
    VCMP_E_HI_F64
    VCMP_E_LS_F64
    VCMP_E_GE_F64
    VCMP_E_LT_F64
    VCMP_E_GT_F64
    VCMP_E_LE_F64
    VCMP_E_F64
    VCMP_E_ZZ_F64
    VCVT_EQ_F32_FXS16
    VCVT_NE_F32_FXS16
    VCVT_CS_F32_FXS16
    VCVT_CC_F32_FXS16
    VCVT_MI_F32_FXS16
    VCVT_PL_F32_FXS16
    VCVT_VS_F32_FXS16
    VCVT_VC_F32_FXS16
    VCVT_HI_F32_FXS16
    VCVT_LS_F32_FXS16
    VCVT_GE_F32_FXS16
    VCVT_LT_F32_FXS16
    VCVT_GT_F32_FXS16
    VCVT_LE_F32_FXS16
    VCVT_F32_FXS16
    VCVT_ZZ_F32_FXS16
    VCVT_EQ_F32_FXS32
    VCVT_NE_F32_FXS32
    VCVT_CS_F32_FXS32
    VCVT_CC_F32_FXS32
    VCVT_MI_F32_FXS32
    VCVT_PL_F32_FXS32
    VCVT_VS_F32_FXS32
    VCVT_VC_F32_FXS32
    VCVT_HI_F32_FXS32
    VCVT_LS_F32_FXS32
    VCVT_GE_F32_FXS32
    VCVT_LT_F32_FXS32
    VCVT_GT_F32_FXS32
    VCVT_LE_F32_FXS32
    VCVT_F32_FXS32
    VCVT_ZZ_F32_FXS32
    VCVT_EQ_F32_FXU16
    VCVT_NE_F32_FXU16
    VCVT_CS_F32_FXU16
    VCVT_CC_F32_FXU16
    VCVT_MI_F32_FXU16
    VCVT_PL_F32_FXU16
    VCVT_VS_F32_FXU16
    VCVT_VC_F32_FXU16
    VCVT_HI_F32_FXU16
    VCVT_LS_F32_FXU16
    VCVT_GE_F32_FXU16
    VCVT_LT_F32_FXU16
    VCVT_GT_F32_FXU16
    VCVT_LE_F32_FXU16
    VCVT_F32_FXU16
    VCVT_ZZ_F32_FXU16
    VCVT_EQ_F32_FXU32
    VCVT_NE_F32_FXU32
    VCVT_CS_F32_FXU32
    VCVT_CC_F32_FXU32
    VCVT_MI_F32_FXU32
    VCVT_PL_F32_FXU32
    VCVT_VS_F32_FXU32
    VCVT_VC_F32_FXU32
    VCVT_HI_F32_FXU32
    VCVT_LS_F32_FXU32
    VCVT_GE_F32_FXU32
    VCVT_LT_F32_FXU32
    VCVT_GT_F32_FXU32
    VCVT_LE_F32_FXU32
    VCVT_F32_FXU32
    VCVT_ZZ_F32_FXU32
    VCVT_EQ_F64_FXS16
    VCVT_NE_F64_FXS16
    VCVT_CS_F64_FXS16
    VCVT_CC_F64_FXS16
    VCVT_MI_F64_FXS16
    VCVT_PL_F64_FXS16
    VCVT_VS_F64_FXS16
    VCVT_VC_F64_FXS16
    VCVT_HI_F64_FXS16
    VCVT_LS_F64_FXS16
    VCVT_GE_F64_FXS16
    VCVT_LT_F64_FXS16
    VCVT_GT_F64_FXS16
    VCVT_LE_F64_FXS16
    VCVT_F64_FXS16
    VCVT_ZZ_F64_FXS16
    VCVT_EQ_F64_FXS32
    VCVT_NE_F64_FXS32
    VCVT_CS_F64_FXS32
    VCVT_CC_F64_FXS32
    VCVT_MI_F64_FXS32
    VCVT_PL_F64_FXS32
    VCVT_VS_F64_FXS32
    VCVT_VC_F64_FXS32
    VCVT_HI_F64_FXS32
    VCVT_LS_F64_FXS32
    VCVT_GE_F64_FXS32
    VCVT_LT_F64_FXS32
    VCVT_GT_F64_FXS32
    VCVT_LE_F64_FXS32
    VCVT_F64_FXS32
    VCVT_ZZ_F64_FXS32
    VCVT_EQ_F64_FXU16
    VCVT_NE_F64_FXU16
    VCVT_CS_F64_FXU16
    VCVT_CC_F64_FXU16
    VCVT_MI_F64_FXU16
    VCVT_PL_F64_FXU16
    VCVT_VS_F64_FXU16
    VCVT_VC_F64_FXU16
    VCVT_HI_F64_FXU16
    VCVT_LS_F64_FXU16
    VCVT_GE_F64_FXU16
    VCVT_LT_F64_FXU16
    VCVT_GT_F64_FXU16
    VCVT_LE_F64_FXU16
    VCVT_F64_FXU16
    VCVT_ZZ_F64_FXU16
    VCVT_EQ_F64_FXU32
    VCVT_NE_F64_FXU32
    VCVT_CS_F64_FXU32
    VCVT_CC_F64_FXU32
    VCVT_MI_F64_FXU32
    VCVT_PL_F64_FXU32
    VCVT_VS_F64_FXU32
    VCVT_VC_F64_FXU32
    VCVT_HI_F64_FXU32
    VCVT_LS_F64_FXU32
    VCVT_GE_F64_FXU32
    VCVT_LT_F64_FXU32
    VCVT_GT_F64_FXU32
    VCVT_LE_F64_FXU32
    VCVT_F64_FXU32
    VCVT_ZZ_F64_FXU32
    VCVT_EQ_F32_U32
    VCVT_NE_F32_U32
    VCVT_CS_F32_U32
    VCVT_CC_F32_U32
    VCVT_MI_F32_U32
    VCVT_PL_F32_U32
    VCVT_VS_F32_U32
    VCVT_VC_F32_U32
    VCVT_HI_F32_U32
    VCVT_LS_F32_U32
    VCVT_GE_F32_U32
    VCVT_LT_F32_U32
    VCVT_GT_F32_U32
    VCVT_LE_F32_U32
    VCVT_F32_U32
    VCVT_ZZ_F32_U32
    VCVT_EQ_F32_S32
    VCVT_NE_F32_S32
    VCVT_CS_F32_S32
    VCVT_CC_F32_S32
    VCVT_MI_F32_S32
    VCVT_PL_F32_S32
    VCVT_VS_F32_S32
    VCVT_VC_F32_S32
    VCVT_HI_F32_S32
    VCVT_LS_F32_S32
    VCVT_GE_F32_S32
    VCVT_LT_F32_S32
    VCVT_GT_F32_S32
    VCVT_LE_F32_S32
    VCVT_F32_S32
    VCVT_ZZ_F32_S32
    VCVT_EQ_F64_U32
    VCVT_NE_F64_U32
    VCVT_CS_F64_U32
    VCVT_CC_F64_U32
    VCVT_MI_F64_U32
    VCVT_PL_F64_U32
    VCVT_VS_F64_U32
    VCVT_VC_F64_U32
    VCVT_HI_F64_U32
    VCVT_LS_F64_U32
    VCVT_GE_F64_U32
    VCVT_LT_F64_U32
    VCVT_GT_F64_U32
    VCVT_LE_F64_U32
    VCVT_F64_U32
    VCVT_ZZ_F64_U32
    VCVT_EQ_F64_S32
    VCVT_NE_F64_S32
    VCVT_CS_F64_S32
    VCVT_CC_F64_S32
    VCVT_MI_F64_S32
    VCVT_PL_F64_S32
    VCVT_VS_F64_S32
    VCVT_VC_F64_S32
    VCVT_HI_F64_S32
    VCVT_LS_F64_S32
    VCVT_GE_F64_S32
    VCVT_LT_F64_S32
    VCVT_GT_F64_S32
    VCVT_LE_F64_S32
    VCVT_F64_S32
    VCVT_ZZ_F64_S32
    VCVT_EQ_F64_F32
    VCVT_NE_F64_F32
    VCVT_CS_F64_F32
    VCVT_CC_F64_F32
    VCVT_MI_F64_F32
    VCVT_PL_F64_F32
    VCVT_VS_F64_F32
    VCVT_VC_F64_F32
    VCVT_HI_F64_F32
    VCVT_LS_F64_F32
    VCVT_GE_F64_F32
    VCVT_LT_F64_F32
    VCVT_GT_F64_F32
    VCVT_LE_F64_F32
    VCVT_F64_F32
    VCVT_ZZ_F64_F32
    VCVT_EQ_F32_F64
    VCVT_NE_F32_F64
    VCVT_CS_F32_F64
    VCVT_CC_F32_F64
    VCVT_MI_F32_F64
    VCVT_PL_F32_F64
    VCVT_VS_F32_F64
    VCVT_VC_F32_F64
    VCVT_HI_F32_F64
    VCVT_LS_F32_F64
    VCVT_GE_F32_F64
    VCVT_LT_F32_F64
    VCVT_GT_F32_F64
    VCVT_LE_F32_F64
    VCVT_F32_F64
    VCVT_ZZ_F32_F64
    VCVT_EQ_FXS16_F32
    VCVT_NE_FXS16_F32
    VCVT_CS_FXS16_F32
    VCVT_CC_FXS16_F32
    VCVT_MI_FXS16_F32
    VCVT_PL_FXS16_F32
    VCVT_VS_FXS16_F32
    VCVT_VC_FXS16_F32
    VCVT_HI_FXS16_F32
    VCVT_LS_FXS16_F32
    VCVT_GE_FXS16_F32
    VCVT_LT_FXS16_F32
    VCVT_GT_FXS16_F32
    VCVT_LE_FXS16_F32
    VCVT_FXS16_F32
    VCVT_ZZ_FXS16_F32
    VCVT_EQ_FXS16_F64
    VCVT_NE_FXS16_F64
    VCVT_CS_FXS16_F64
    VCVT_CC_FXS16_F64
    VCVT_MI_FXS16_F64
    VCVT_PL_FXS16_F64
    VCVT_VS_FXS16_F64
    VCVT_VC_FXS16_F64
    VCVT_HI_FXS16_F64
    VCVT_LS_FXS16_F64
    VCVT_GE_FXS16_F64
    VCVT_LT_FXS16_F64
    VCVT_GT_FXS16_F64
    VCVT_LE_FXS16_F64
    VCVT_FXS16_F64
    VCVT_ZZ_FXS16_F64
    VCVT_EQ_FXS32_F32
    VCVT_NE_FXS32_F32
    VCVT_CS_FXS32_F32
    VCVT_CC_FXS32_F32
    VCVT_MI_FXS32_F32
    VCVT_PL_FXS32_F32
    VCVT_VS_FXS32_F32
    VCVT_VC_FXS32_F32
    VCVT_HI_FXS32_F32
    VCVT_LS_FXS32_F32
    VCVT_GE_FXS32_F32
    VCVT_LT_FXS32_F32
    VCVT_GT_FXS32_F32
    VCVT_LE_FXS32_F32
    VCVT_FXS32_F32
    VCVT_ZZ_FXS32_F32
    VCVT_EQ_FXS32_F64
    VCVT_NE_FXS32_F64
    VCVT_CS_FXS32_F64
    VCVT_CC_FXS32_F64
    VCVT_MI_FXS32_F64
    VCVT_PL_FXS32_F64
    VCVT_VS_FXS32_F64
    VCVT_VC_FXS32_F64
    VCVT_HI_FXS32_F64
    VCVT_LS_FXS32_F64
    VCVT_GE_FXS32_F64
    VCVT_LT_FXS32_F64
    VCVT_GT_FXS32_F64
    VCVT_LE_FXS32_F64
    VCVT_FXS32_F64
    VCVT_ZZ_FXS32_F64
    VCVT_EQ_FXU16_F32
    VCVT_NE_FXU16_F32
    VCVT_CS_FXU16_F32
    VCVT_CC_FXU16_F32
    VCVT_MI_FXU16_F32
    VCVT_PL_FXU16_F32
    VCVT_VS_FXU16_F32
    VCVT_VC_FXU16_F32
    VCVT_HI_FXU16_F32
    VCVT_LS_FXU16_F32
    VCVT_GE_FXU16_F32
    VCVT_LT_FXU16_F32
    VCVT_GT_FXU16_F32
    VCVT_LE_FXU16_F32
    VCVT_FXU16_F32
    VCVT_ZZ_FXU16_F32
    VCVT_EQ_FXU16_F64
    VCVT_NE_FXU16_F64
    VCVT_CS_FXU16_F64
    VCVT_CC_FXU16_F64
    VCVT_MI_FXU16_F64
    VCVT_PL_FXU16_F64
    VCVT_VS_FXU16_F64
    VCVT_VC_FXU16_F64
    VCVT_HI_FXU16_F64
    VCVT_LS_FXU16_F64
    VCVT_GE_FXU16_F64
    VCVT_LT_FXU16_F64
    VCVT_GT_FXU16_F64
    VCVT_LE_FXU16_F64
    VCVT_FXU16_F64
    VCVT_ZZ_FXU16_F64
    VCVT_EQ_FXU32_F32
    VCVT_NE_FXU32_F32
    VCVT_CS_FXU32_F32
    VCVT_CC_FXU32_F32
    VCVT_MI_FXU32_F32
    VCVT_PL_FXU32_F32
    VCVT_VS_FXU32_F32
    VCVT_VC_FXU32_F32
    VCVT_HI_FXU32_F32
    VCVT_LS_FXU32_F32
    VCVT_GE_FXU32_F32
    VCVT_LT_FXU32_F32
    VCVT_GT_FXU32_F32
    VCVT_LE_FXU32_F32
    VCVT_FXU32_F32
    VCVT_ZZ_FXU32_F32
    VCVT_EQ_FXU32_F64
    VCVT_NE_FXU32_F64
    VCVT_CS_FXU32_F64
    VCVT_CC_FXU32_F64
    VCVT_MI_FXU32_F64
    VCVT_PL_FXU32_F64
    VCVT_VS_FXU32_F64
    VCVT_VC_FXU32_F64
    VCVT_HI_FXU32_F64
    VCVT_LS_FXU32_F64
    VCVT_GE_FXU32_F64
    VCVT_LT_FXU32_F64
    VCVT_GT_FXU32_F64
    VCVT_LE_FXU32_F64
    VCVT_FXU32_F64
    VCVT_ZZ_FXU32_F64
    VCVTB_EQ_F32_F16
    VCVTB_NE_F32_F16
    VCVTB_CS_F32_F16
    VCVTB_CC_F32_F16
    VCVTB_MI_F32_F16
    VCVTB_PL_F32_F16
    VCVTB_VS_F32_F16
    VCVTB_VC_F32_F16
    VCVTB_HI_F32_F16
    VCVTB_LS_F32_F16
    VCVTB_GE_F32_F16
    VCVTB_LT_F32_F16
    VCVTB_GT_F32_F16
    VCVTB_LE_F32_F16
    VCVTB_F32_F16
    VCVTB_ZZ_F32_F16
    VCVTB_EQ_F16_F32
    VCVTB_NE_F16_F32
    VCVTB_CS_F16_F32
    VCVTB_CC_F16_F32
    VCVTB_MI_F16_F32
    VCVTB_PL_F16_F32
    VCVTB_VS_F16_F32
    VCVTB_VC_F16_F32
    VCVTB_HI_F16_F32
    VCVTB_LS_F16_F32
    VCVTB_GE_F16_F32
    VCVTB_LT_F16_F32
    VCVTB_GT_F16_F32
    VCVTB_LE_F16_F32
    VCVTB_F16_F32
    VCVTB_ZZ_F16_F32
    VCVTT_EQ_F32_F16
    VCVTT_NE_F32_F16
    VCVTT_CS_F32_F16
    VCVTT_CC_F32_F16
    VCVTT_MI_F32_F16
    VCVTT_PL_F32_F16
    VCVTT_VS_F32_F16
    VCVTT_VC_F32_F16
    VCVTT_HI_F32_F16
    VCVTT_LS_F32_F16
    VCVTT_GE_F32_F16
    VCVTT_LT_F32_F16
    VCVTT_GT_F32_F16
    VCVTT_LE_F32_F16
    VCVTT_F32_F16
    VCVTT_ZZ_F32_F16
    VCVTT_EQ_F16_F32
    VCVTT_NE_F16_F32
    VCVTT_CS_F16_F32
    VCVTT_CC_F16_F32
    VCVTT_MI_F16_F32
    VCVTT_PL_F16_F32
    VCVTT_VS_F16_F32
    VCVTT_VC_F16_F32
    VCVTT_HI_F16_F32
    VCVTT_LS_F16_F32
    VCVTT_GE_F16_F32
    VCVTT_LT_F16_F32
    VCVTT_GT_F16_F32
    VCVTT_LE_F16_F32
    VCVTT_F16_F32
    VCVTT_ZZ_F16_F32
    VCVTR_EQ_U32_F32
    VCVTR_NE_U32_F32
    VCVTR_CS_U32_F32
    VCVTR_CC_U32_F32
    VCVTR_MI_U32_F32
    VCVTR_PL_U32_F32
    VCVTR_VS_U32_F32
    VCVTR_VC_U32_F32
    VCVTR_HI_U32_F32
    VCVTR_LS_U32_F32
    VCVTR_GE_U32_F32
    VCVTR_LT_U32_F32
    VCVTR_GT_U32_F32
    VCVTR_LE_U32_F32
    VCVTR_U32_F32
    VCVTR_ZZ_U32_F32
    VCVTR_EQ_U32_F64
    VCVTR_NE_U32_F64
    VCVTR_CS_U32_F64
    VCVTR_CC_U32_F64
    VCVTR_MI_U32_F64
    VCVTR_PL_U32_F64
    VCVTR_VS_U32_F64
    VCVTR_VC_U32_F64
    VCVTR_HI_U32_F64
    VCVTR_LS_U32_F64
    VCVTR_GE_U32_F64
    VCVTR_LT_U32_F64
    VCVTR_GT_U32_F64
    VCVTR_LE_U32_F64
    VCVTR_U32_F64
    VCVTR_ZZ_U32_F64
    VCVTR_EQ_S32_F32
    VCVTR_NE_S32_F32
    VCVTR_CS_S32_F32
    VCVTR_CC_S32_F32
    VCVTR_MI_S32_F32
    VCVTR_PL_S32_F32
    VCVTR_VS_S32_F32
    VCVTR_VC_S32_F32
    VCVTR_HI_S32_F32
    VCVTR_LS_S32_F32
    VCVTR_GE_S32_F32
    VCVTR_LT_S32_F32
    VCVTR_GT_S32_F32
    VCVTR_LE_S32_F32
    VCVTR_S32_F32
    VCVTR_ZZ_S32_F32
    VCVTR_EQ_S32_F64
    VCVTR_NE_S32_F64
    VCVTR_CS_S32_F64
    VCVTR_CC_S32_F64
    VCVTR_MI_S32_F64
    VCVTR_PL_S32_F64
    VCVTR_VS_S32_F64
    VCVTR_VC_S32_F64
    VCVTR_HI_S32_F64
    VCVTR_LS_S32_F64
    VCVTR_GE_S32_F64
    VCVTR_LT_S32_F64
    VCVTR_GT_S32_F64
    VCVTR_LE_S32_F64
    VCVTR_S32_F64
    VCVTR_ZZ_S32_F64
    VCVT_EQ_U32_F32
    VCVT_NE_U32_F32
    VCVT_CS_U32_F32
    VCVT_CC_U32_F32
    VCVT_MI_U32_F32
    VCVT_PL_U32_F32
    VCVT_VS_U32_F32
    VCVT_VC_U32_F32
    VCVT_HI_U32_F32
    VCVT_LS_U32_F32
    VCVT_GE_U32_F32
    VCVT_LT_U32_F32
    VCVT_GT_U32_F32
    VCVT_LE_U32_F32
    VCVT_U32_F32
    VCVT_ZZ_U32_F32
    VCVT_EQ_U32_F64
    VCVT_NE_U32_F64
    VCVT_CS_U32_F64
    VCVT_CC_U32_F64
    VCVT_MI_U32_F64
    VCVT_PL_U32_F64
    VCVT_VS_U32_F64
    VCVT_VC_U32_F64
    VCVT_HI_U32_F64
    VCVT_LS_U32_F64
    VCVT_GE_U32_F64
    VCVT_LT_U32_F64
    VCVT_GT_U32_F64
    VCVT_LE_U32_F64
    VCVT_U32_F64
    VCVT_ZZ_U32_F64
    VCVT_EQ_S32_F32
    VCVT_NE_S32_F32
    VCVT_CS_S32_F32
    VCVT_CC_S32_F32
    VCVT_MI_S32_F32
    VCVT_PL_S32_F32
    VCVT_VS_S32_F32
    VCVT_VC_S32_F32
    VCVT_HI_S32_F32
    VCVT_LS_S32_F32
    VCVT_GE_S32_F32
    VCVT_LT_S32_F32
    VCVT_GT_S32_F32
    VCVT_LE_S32_F32
    VCVT_S32_F32
    VCVT_ZZ_S32_F32
    VCVT_EQ_S32_F64
    VCVT_NE_S32_F64
    VCVT_CS_S32_F64
    VCVT_CC_S32_F64
    VCVT_MI_S32_F64
    VCVT_PL_S32_F64
    VCVT_VS_S32_F64
    VCVT_VC_S32_F64
    VCVT_HI_S32_F64
    VCVT_LS_S32_F64
    VCVT_GE_S32_F64
    VCVT_LT_S32_F64
    VCVT_GT_S32_F64
    VCVT_LE_S32_F64
    VCVT_S32_F64
    VCVT_ZZ_S32_F64
    VDIV_EQ_F32
    VDIV_NE_F32
    VDIV_CS_F32
    VDIV_CC_F32
    VDIV_MI_F32
    VDIV_PL_F32
    VDIV_VS_F32
    VDIV_VC_F32
    VDIV_HI_F32
    VDIV_LS_F32
    VDIV_GE_F32
    VDIV_LT_F32
    VDIV_GT_F32
    VDIV_LE_F32
    VDIV_F32
    VDIV_ZZ_F32
    VDIV_EQ_F64
    VDIV_NE_F64
    VDIV_CS_F64
    VDIV_CC_F64
    VDIV_MI_F64
    VDIV_PL_F64
    VDIV_VS_F64
    VDIV_VC_F64
    VDIV_HI_F64
    VDIV_LS_F64
    VDIV_GE_F64
    VDIV_LT_F64
    VDIV_GT_F64
    VDIV_LE_F64
    VDIV_F64
    VDIV_ZZ_F64
    VLDR_EQ
    VLDR_NE
    VLDR_CS
    VLDR_CC
    VLDR_MI
    VLDR_PL
    VLDR_VS
    VLDR_VC
    VLDR_HI
    VLDR_LS
    VLDR_GE
    VLDR_LT
    VLDR_GT
    VLDR_LE
    VLDR
    VLDR_ZZ
    VMLA_EQ_F32
    VMLA_NE_F32
    VMLA_CS_F32
    VMLA_CC_F32
    VMLA_MI_F32
    VMLA_PL_F32
    VMLA_VS_F32
    VMLA_VC_F32
    VMLA_HI_F32
    VMLA_LS_F32
    VMLA_GE_F32
    VMLA_LT_F32
    VMLA_GT_F32
    VMLA_LE_F32
    VMLA_F32
    VMLA_ZZ_F32
    VMLA_EQ_F64
    VMLA_NE_F64
    VMLA_CS_F64
    VMLA_CC_F64
    VMLA_MI_F64
    VMLA_PL_F64
    VMLA_VS_F64
    VMLA_VC_F64
    VMLA_HI_F64
    VMLA_LS_F64
    VMLA_GE_F64
    VMLA_LT_F64
    VMLA_GT_F64
    VMLA_LE_F64
    VMLA_F64
    VMLA_ZZ_F64
    VMLS_EQ_F32
    VMLS_NE_F32
    VMLS_CS_F32
    VMLS_CC_F32
    VMLS_MI_F32
    VMLS_PL_F32
    VMLS_VS_F32
    VMLS_VC_F32
    VMLS_HI_F32
    VMLS_LS_F32
    VMLS_GE_F32
    VMLS_LT_F32
    VMLS_GT_F32
    VMLS_LE_F32
    VMLS_F32
    VMLS_ZZ_F32
    VMLS_EQ_F64
    VMLS_NE_F64
    VMLS_CS_F64
    VMLS_CC_F64
    VMLS_MI_F64
    VMLS_PL_F64
    VMLS_VS_F64
    VMLS_VC_F64
    VMLS_HI_F64
    VMLS_LS_F64
    VMLS_GE_F64
    VMLS_LT_F64
    VMLS_GT_F64
    VMLS_LE_F64
    VMLS_F64
    VMLS_ZZ_F64
    VMOV_EQ
    VMOV_NE
    VMOV_CS
    VMOV_CC
    VMOV_MI
    VMOV_PL
    VMOV_VS
    VMOV_VC
    VMOV_HI
    VMOV_LS
    VMOV_GE
    VMOV_LT
    VMOV_GT
    VMOV_LE
    VMOV
    VMOV_ZZ
    VMOV_EQ_32
    VMOV_NE_32
    VMOV_CS_32
    VMOV_CC_32
    VMOV_MI_32
    VMOV_PL_32
    VMOV_VS_32
    VMOV_VC_32
    VMOV_HI_32
    VMOV_LS_32
    VMOV_GE_32
    VMOV_LT_32
    VMOV_GT_32
    VMOV_LE_32
    VMOV_32
    VMOV_ZZ_32
    VMOV_EQ_F32
    VMOV_NE_F32
    VMOV_CS_F32
    VMOV_CC_F32
    VMOV_MI_F32
    VMOV_PL_F32
    VMOV_VS_F32
    VMOV_VC_F32
    VMOV_HI_F32
    VMOV_LS_F32
    VMOV_GE_F32
    VMOV_LT_F32
    VMOV_GT_F32
    VMOV_LE_F32
    VMOV_F32
    VMOV_ZZ_F32
    VMOV_EQ_F64
    VMOV_NE_F64
    VMOV_CS_F64
    VMOV_CC_F64
    VMOV_MI_F64
    VMOV_PL_F64
    VMOV_VS_F64
    VMOV_VC_F64
    VMOV_HI_F64
    VMOV_LS_F64
    VMOV_GE_F64
    VMOV_LT_F64
    VMOV_GT_F64
    VMOV_LE_F64
    VMOV_F64
    VMOV_ZZ_F64
    VMRS_EQ
    VMRS_NE
    VMRS_CS
    VMRS_CC
    VMRS_MI
    VMRS_PL
    VMRS_VS
    VMRS_VC
    VMRS_HI
    VMRS_LS
    VMRS_GE
    VMRS_LT
    VMRS_GT
    VMRS_LE
    VMRS
    VMRS_ZZ
    VMSR_EQ
    VMSR_NE
    VMSR_CS
    VMSR_CC
    VMSR_MI
    VMSR_PL
    VMSR_VS
    VMSR_VC
    VMSR_HI
    VMSR_LS
    VMSR_GE
    VMSR_LT
    VMSR_GT
    VMSR_LE
    VMSR
    VMSR_ZZ
    VMUL_EQ_F32
    VMUL_NE_F32
    VMUL_CS_F32
    VMUL_CC_F32
    VMUL_MI_F32
    VMUL_PL_F32
    VMUL_VS_F32
    VMUL_VC_F32
    VMUL_HI_F32
    VMUL_LS_F32
    VMUL_GE_F32
    VMUL_LT_F32
    VMUL_GT_F32
    VMUL_LE_F32
    VMUL_F32
    VMUL_ZZ_F32
    VMUL_EQ_F64
    VMUL_NE_F64
    VMUL_CS_F64
    VMUL_CC_F64
    VMUL_MI_F64
    VMUL_PL_F64
    VMUL_VS_F64
    VMUL_VC_F64
    VMUL_HI_F64
    VMUL_LS_F64
    VMUL_GE_F64
    VMUL_LT_F64
    VMUL_GT_F64
    VMUL_LE_F64
    VMUL_F64
    VMUL_ZZ_F64
    VNEG_EQ_F32
    VNEG_NE_F32
    VNEG_CS_F32
    VNEG_CC_F32
    VNEG_MI_F32
    VNEG_PL_F32
    VNEG_VS_F32
    VNEG_VC_F32
    VNEG_HI_F32
    VNEG_LS_F32
    VNEG_GE_F32
    VNEG_LT_F32
    VNEG_GT_F32
    VNEG_LE_F32
    VNEG_F32
    VNEG_ZZ_F32
    VNEG_EQ_F64
    VNEG_NE_F64
    VNEG_CS_F64
    VNEG_CC_F64
    VNEG_MI_F64
    VNEG_PL_F64
    VNEG_VS_F64
    VNEG_VC_F64
    VNEG_HI_F64
    VNEG_LS_F64
    VNEG_GE_F64
    VNEG_LT_F64
    VNEG_GT_F64
    VNEG_LE_F64
    VNEG_F64
    VNEG_ZZ_F64
    VNMLS_EQ_F32
    VNMLS_NE_F32
    VNMLS_CS_F32
    VNMLS_CC_F32
    VNMLS_MI_F32
    VNMLS_PL_F32
    VNMLS_VS_F32
    VNMLS_VC_F32
    VNMLS_HI_F32
    VNMLS_LS_F32
    VNMLS_GE_F32
    VNMLS_LT_F32
    VNMLS_GT_F32
    VNMLS_LE_F32
    VNMLS_F32
    VNMLS_ZZ_F32
    VNMLS_EQ_F64
    VNMLS_NE_F64
    VNMLS_CS_F64
    VNMLS_CC_F64
    VNMLS_MI_F64
    VNMLS_PL_F64
    VNMLS_VS_F64
    VNMLS_VC_F64
    VNMLS_HI_F64
    VNMLS_LS_F64
    VNMLS_GE_F64
    VNMLS_LT_F64
    VNMLS_GT_F64
    VNMLS_LE_F64
    VNMLS_F64
    VNMLS_ZZ_F64
    VNMLA_EQ_F32
    VNMLA_NE_F32
    VNMLA_CS_F32
    VNMLA_CC_F32
    VNMLA_MI_F32
    VNMLA_PL_F32
    VNMLA_VS_F32
    VNMLA_VC_F32
    VNMLA_HI_F32
    VNMLA_LS_F32
    VNMLA_GE_F32
    VNMLA_LT_F32
    VNMLA_GT_F32
    VNMLA_LE_F32
    VNMLA_F32
    VNMLA_ZZ_F32
    VNMLA_EQ_F64
    VNMLA_NE_F64
    VNMLA_CS_F64
    VNMLA_CC_F64
    VNMLA_MI_F64
    VNMLA_PL_F64
    VNMLA_VS_F64
    VNMLA_VC_F64
    VNMLA_HI_F64
    VNMLA_LS_F64
    VNMLA_GE_F64
    VNMLA_LT_F64
    VNMLA_GT_F64
    VNMLA_LE_F64
    VNMLA_F64
    VNMLA_ZZ_F64
    VNMUL_EQ_F32
    VNMUL_NE_F32
    VNMUL_CS_F32
    VNMUL_CC_F32
    VNMUL_MI_F32
    VNMUL_PL_F32
    VNMUL_VS_F32
    VNMUL_VC_F32
    VNMUL_HI_F32
    VNMUL_LS_F32
    VNMUL_GE_F32
    VNMUL_LT_F32
    VNMUL_GT_F32
    VNMUL_LE_F32
    VNMUL_F32
    VNMUL_ZZ_F32
    VNMUL_EQ_F64
    VNMUL_NE_F64
    VNMUL_CS_F64
    VNMUL_CC_F64
    VNMUL_MI_F64
    VNMUL_PL_F64
    VNMUL_VS_F64
    VNMUL_VC_F64
    VNMUL_HI_F64
    VNMUL_LS_F64
    VNMUL_GE_F64
    VNMUL_LT_F64
    VNMUL_GT_F64
    VNMUL_LE_F64
    VNMUL_F64
    VNMUL_ZZ_F64
    VSQRT_EQ_F32
    VSQRT_NE_F32
    VSQRT_CS_F32
    VSQRT_CC_F32
    VSQRT_MI_F32
    VSQRT_PL_F32
    VSQRT_VS_F32
    VSQRT_VC_F32
    VSQRT_HI_F32
    VSQRT_LS_F32
    VSQRT_GE_F32
    VSQRT_LT_F32
    VSQRT_GT_F32
    VSQRT_LE_F32
    VSQRT_F32
    VSQRT_ZZ_F32
    VSQRT_EQ_F64
    VSQRT_NE_F64
    VSQRT_CS_F64
    VSQRT_CC_F64
    VSQRT_MI_F64
    VSQRT_PL_F64
    VSQRT_VS_F64
    VSQRT_VC_F64
    VSQRT_HI_F64
    VSQRT_LS_F64
    VSQRT_GE_F64
    VSQRT_LT_F64
    VSQRT_GT_F64
    VSQRT_LE_F64
    VSQRT_F64
    VSQRT_ZZ_F64
    VSTR_EQ
    VSTR_NE
    VSTR_CS
    VSTR_CC
    VSTR_MI
    VSTR_PL
    VSTR_VS
    VSTR_VC
    VSTR_HI
    VSTR_LS
    VSTR_GE
    VSTR_LT
    VSTR_GT
    VSTR_LE
    VSTR
    VSTR_ZZ
    VSUB_EQ_F32
    VSUB_NE_F32
    VSUB_CS_F32
    VSUB_CC_F32
    VSUB_MI_F32
    VSUB_PL_F32
    VSUB_VS_F32
    VSUB_VC_F32
    VSUB_HI_F32
    VSUB_LS_F32
    VSUB_GE_F32
    VSUB_LT_F32
    VSUB_GT_F32
    VSUB_LE_F32
    VSUB_F32
    VSUB_ZZ_F32
    VSUB_EQ_F64
    VSUB_NE_F64
    VSUB_CS_F64
    VSUB_CC_F64
    VSUB_MI_F64
    VSUB_PL_F64
    VSUB_VS_F64
    VSUB_VC_F64
    VSUB_HI_F64
    VSUB_LS_F64
    VSUB_GE_F64
    VSUB_LT_F64
    VSUB_GT_F64
    VSUB_LE_F64
    VSUB_F64
    VSUB_ZZ_F64
    WFE_EQ
    WFE_NE
    WFE_CS
    WFE_CC
    WFE_MI
    WFE_PL
    WFE_VS
    WFE_VC
    WFE_HI
    WFE_LS
    WFE_GE
    WFE_LT
    WFE_GT
    WFE_LE
    WFE
    WFE_ZZ
    WFI_EQ
    WFI_NE
    WFI_CS
    WFI_CC
    WFI_MI
    WFI_PL
    WFI_VS
    WFI_VC
    WFI_HI
    WFI_LS
    WFI_GE
    WFI_LT
    WFI_GT
    WFI_LE
    WFI
    WFI_ZZ
    YIELD_EQ
    YIELD_NE
    YIELD_CS
    YIELD_CC
    YIELD_MI
    YIELD_PL
    YIELD_VS
    YIELD_VC
    YIELD_HI
    YIELD_LS
    YIELD_GE
    YIELD_LT
    YIELD_GT
    YIELD_LE
    YIELD
    YIELD_ZZ
)

func (Op) String

func (op Op) String() string

type PCRel

A PCRel describes a memory address (usually a code label) as a distance relative to the program counter. TODO(rsc): Define which program counter (PC+4? PC+8? PC?).

type PCRel int32

func (PCRel) IsArg

func (PCRel) IsArg()

func (PCRel) String

func (r PCRel) String() string

type Reg

A Reg is a single register. The zero value denotes R0, not the absence of a register.

type Reg uint8
const (
    R0 Reg = iota
    R1
    R2
    R3
    R4
    R5
    R6
    R7
    R8
    R9
    R10
    R11
    R12
    R13
    R14
    R15

    S0
    S1
    S2
    S3
    S4
    S5
    S6
    S7
    S8
    S9
    S10
    S11
    S12
    S13
    S14
    S15
    S16
    S17
    S18
    S19
    S20
    S21
    S22
    S23
    S24
    S25
    S26
    S27
    S28
    S29
    S30
    S31

    D0
    D1
    D2
    D3
    D4
    D5
    D6
    D7
    D8
    D9
    D10
    D11
    D12
    D13
    D14
    D15
    D16
    D17
    D18
    D19
    D20
    D21
    D22
    D23
    D24
    D25
    D26
    D27
    D28
    D29
    D30
    D31

    APSR
    APSR_nzcv
    FPSCR

    SP = R13
    LR = R14
    PC = R15
)

func (Reg) IsArg

func (Reg) IsArg()

func (Reg) String

func (r Reg) String() string

type RegList

A RegList is a register list. Bits at indexes x = 0 through 15 indicate whether the corresponding Rx register is in the list.

type RegList uint16

func (RegList) IsArg

func (RegList) IsArg()

func (RegList) String

func (r RegList) String() string

type RegShift

A RegShift is a register shifted by a constant.

type RegShift struct {
    Reg   Reg
    Shift Shift
    Count uint8
}

func (RegShift) IsArg

func (RegShift) IsArg()

func (RegShift) String

func (r RegShift) String() string

type RegShiftReg

A RegShiftReg is a register shifted by a register.

type RegShiftReg struct {
    Reg      Reg
    Shift    Shift
    RegCount Reg
}

func (RegShiftReg) IsArg

func (RegShiftReg) IsArg()

func (RegShiftReg) String

func (r RegShiftReg) String() string

type RegX

A RegX represents a fraction of a multi-value register. The Index field specifies the index number, but the size of the fraction is not specified. It must be inferred from the instruction and the register type. For example, in a VMOV instruction, RegX{D5, 1} represents the top 32 bits of the 64-bit D5 register.

type RegX struct {
    Reg   Reg
    Index int
}

func (RegX) IsArg

func (RegX) IsArg()

func (RegX) String

func (r RegX) String() string

type Shift

A Shift describes an ARM shift operation.

type Shift uint8
const (
    ShiftLeft        Shift = 0 // left shift
    ShiftRight       Shift = 1 // logical (unsigned) right shift
    ShiftRightSigned Shift = 2 // arithmetic (signed) right shift
    RotateRight      Shift = 3 // right rotate
    RotateRightExt   Shift = 4 // right rotate through carry (Count will always be 1)
)

func (Shift) String

func (s Shift) String() string