Structure
ArmInstruction.Operand
public struct Operand: InstructionOperand
Operand for Arm instructions.
The operand's value can be accessed by the value
property, or by a property corresponding to the operand's type:
-
register
forreg
operands. -
systemRegister
forsysreg
operands. -
immediateValue
forimm
,pimm
orcimm
operands. -
doubleValue
forfp
operands. -
memory
formem
operands. -
setend
forsetend
operands (only used forsetend
instruction).
Relationships
Member Of
ArmInstruction
ARM Instruction
Nested Types
ArmInstruction.Operand.Shift
Instruction operand shift.
ArmInstruction.Operand.Memory
Operand value referring to memory.
Conforms To
InstructionOperand
Protocol for instruction operands.
Properties
vectorIndex
var vectorIndex: Int!
Vector Index for some vector operands.
nil
if not applicable.
shift
var shift: Shift?
Operand shift.
nil
if operand has no shift.
subtracted
var subtracted: Bool
In some instructions, an operand can be subtracted or added to the base register.
neonLane
var neonLane: Int!
Neon lane index for NEON instructions.
nil
when not a NEON instruction.
systemRegister
var systemRegister: ArmSysreg!
System register value for sysreg
operand.
nil
when not an appropriate operand.
immediateValue
var immediateValue: Int32!
Immediate value for C-IMM, P-IMM or IMM operand.
nil
when not an appropriate operand.
doubleValue
var doubleValue: Double!
Floating point value for FP operand.
nil
when not an appropriate operand.
memory
var memory: Memory!
Base/index/scale/disp value for memory operand.
nil
when not an appropriate operand.
setend
var setend: ArmSetend!
Operand type for SETEND instruction.
nil
when not an appropriate operand.