14 #pragma warning(disable:4201)
struct cs_arm cs_arm
Instruction structure.
arm_shifter
ARM shift type.
@ ARM_SFT_ROR_REG
shift with register
@ ARM_SFT_ASR
shift with immediate const
@ ARM_SFT_LSR_REG
shift with register
@ ARM_SFT_LSL_REG
shift with register
@ ARM_SFT_ROR
shift with immediate const
@ ARM_SFT_LSL
shift with immediate const
@ ARM_SFT_RRX_REG
shift with register
@ ARM_SFT_LSR
shift with immediate const
@ ARM_SFT_RRX
shift with immediate const
@ ARM_SFT_ASR_REG
shift with register
arm_setend_type
Operand type for SETEND instruction.
@ ARM_SETEND_LE
LE operand.
@ ARM_SETEND_BE
BE operand.
@ ARM_SETEND_INVALID
Uninitialized.
@ ARM_SYSREG_EAPSR_NZCVQG
@ ARM_SYSREG_IAPSR_NZCVQG
@ ARM_SYSREG_INVALID
Special registers for MSR.
arm_insn_group
Group of ARM instructions.
@ ARM_GRP_BRANCH_RELATIVE
= CS_GRP_BRANCH_RELATIVE
@ ARM_GRP_JUMP
= CS_GRP_JUMP
@ ARM_GRP_INVALID
= CS_GRP_INVALID
@ ARM_GRP_PRIVILEGE
= CS_GRP_PRIVILEGE
@ ARM_GRP_INT
= CS_GRP_INT
@ ARM_GRP_CALL
= CS_GRP_CALL
arm_op_type
Operand type for instruction's operands.
@ ARM_OP_IMM
= CS_OP_IMM (Immediate operand).
@ ARM_OP_REG
= CS_OP_REG (Register operand).
@ ARM_OP_CIMM
C-Immediate (coprocessor registers)
@ ARM_OP_SETEND
operand for SETEND instruction
@ ARM_OP_PIMM
P-Immediate (coprocessor registers)
@ ARM_OP_INVALID
= CS_OP_INVALID (Uninitialized).
@ ARM_OP_MEM
= CS_OP_MEM (Memory operand).
@ ARM_OP_FP
= CS_OP_FP (Floating-Point operand).
@ ARM_OP_SYSREG
MSR/MRS special register operand.
struct arm_op_mem arm_op_mem
arm_cc
ARM condition code.
@ ARM_CC_GT
Greater than Greater than.
@ ARM_CC_LE
Less than or equal <, ==, or unordered.
@ ARM_CC_AL
Always (unconditional) Always (unconditional)
@ ARM_CC_HI
Unsigned higher Greater than, or unordered.
@ ARM_CC_VC
No overflow Not unordered.
@ ARM_CC_LS
Unsigned lower or same Less than or equal.
@ ARM_CC_GE
Greater than or equal Greater than or equal.
@ ARM_CC_VS
Overflow Unordered.
@ ARM_CC_PL
Plus, positive or zero >, ==, or unordered.
@ ARM_CC_NE
Not equal Not equal, or unordered.
@ ARM_CC_LO
Carry clear Less than.
@ ARM_CC_LT
Less than Less than, or unordered.
@ ARM_CC_HS
Carry set >, ==, or unordered.
@ ARM_CC_MI
Minus, negative Less than.
arm_cpsflag_type
Operand type for SETEND instruction.
@ ARM_CPSFLAG_NONE
no flag
arm_vectordata_type
Data type for elements of vector instructions.
struct cs_arm_op cs_arm_op
Instruction operand.
int scale
scale for index register (can be 1, or -1)
arm_reg base
base register
arm_reg index
index register
arm_op_type type
operand type
struct cs_arm_op::@341 shift
int vector_index
Vector Index for some vector operands (or -1 if irrelevant)
double fp
floating point value for FP operand
arm_setend_type setend
SETEND instruction's operand type.
arm_op_mem mem
base/index/scale/disp value for MEM operand
int32_t imm
immediate value for C-IMM, P-IMM or IMM operand
int reg
register value for REG/SYSREG operand
int8_t neon_lane
Neon lane index for NEON instructions (or -1 if irrelevant)
arm_vectordata_type vector_data
Data type for elements of vector instructions.
arm_cpsflag_type cps_flag
CPS mode for CPS instruction.
bool update_flags
does this insn update flags?
arm_cpsmode_type cps_mode
CPS mode for CPS instruction.
int vector_size
Scalar size for vector instructions.
bool usermode
User-mode registers to be loaded (for LDM/STM instructions)
arm_cc cc
conditional code for this insn
bool writeback
does this insn write-back?
arm_mem_barrier mem_barrier
Option for some memory barrier instructions.