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:
-
registerforregoperands. -
systemRegisterforsysregoperands. -
immediateValueforimm,pimmorcimmoperands. -
doubleValueforfpoperands. -
memoryformemoperands. -
setendforsetendoperands (only used forsetendinstruction).
Relationships
Member Of
ArmInstructionARM Instruction
Nested Types
ArmInstruction.Operand.ShiftInstruction operand shift.
ArmInstruction.Operand.MemoryOperand value referring to memory.
Conforms To
InstructionOperandProtocol 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.