armasm

package
v0.0.0-...-56b0efd Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 20, 2023 License: BSD-3-Clause Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

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 Plan9Syntax

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

Plan9Syntax 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.

Types

type AddrMode

type AddrMode uint8

An AddrMode is an ARM addressing mode.

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

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

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

type Args

type Args [4]Arg

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

type Endian

type Endian uint8

An Endian is the argument to the SETEND instruction.

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

type Imm uint32

An Imm is an integer constant.

func (Imm) IsArg

func (Imm) IsArg()

func (Imm) String

func (i Imm) String() string

type ImmAlt

type ImmAlt struct {
	Val uint8
	Rot uint8
}

A ImmAlt is an alternate encoding of an integer constant.

func (ImmAlt) Imm

func (i ImmAlt) Imm() Imm

func (ImmAlt) IsArg

func (ImmAlt) IsArg()

func (ImmAlt) String

func (i ImmAlt) String() string

type Inst

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.
}

An Inst is a single instruction.

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

type Label uint32

A Label is a text (code) address.

func (Label) IsArg

func (Label) IsArg()

func (Label) String

func (i Label) String() string

type Mem

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

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.

func (Mem) IsArg

func (Mem) IsArg()

func (Mem) String

func (m Mem) String() string

type Mode

type Mode int

A Mode is an instruction execution mode.

const (
	ModeARM Mode
	ModeThumb
)

func (Mode) String

func (m Mode) String() string

type Op

type Op uint16

An Op is an ARM opcode.

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
	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
	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
	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

type PCRel int32

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?).

func (PCRel) IsArg

func (PCRel) IsArg()

func (PCRel) String

func (r PCRel) String() string

type Reg

type Reg uint8

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

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

type RegList uint16

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

func (RegList) IsArg

func (RegList) IsArg()

func (RegList) String

func (r RegList) String() string

type RegShift

type RegShift struct {
	Reg   Reg
	Shift Shift
	Count uint8
}

A RegShift is a register shifted by a constant.

func (RegShift) IsArg

func (RegShift) IsArg()

func (RegShift) String

func (r RegShift) String() string

type RegShiftReg

type RegShiftReg struct {
	Reg      Reg
	Shift    Shift
	RegCount Reg
}

A RegShiftReg is a register shifted by a register.

func (RegShiftReg) IsArg

func (RegShiftReg) IsArg()

func (RegShiftReg) String

func (r RegShiftReg) String() string

type RegX

type RegX struct {
	Reg   Reg
	Index int
}

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.

func (RegX) IsArg

func (RegX) IsArg()

func (RegX) String

func (r RegX) String() string

type Shift

type Shift uint8

A Shift describes an ARM shift operation.

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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL