OpKind

Instruction operand kind

iced_x86.OpKind.REGISTER: int = 0

A register (iced_x86.Register).

This operand kind uses iced_x86.Instruction.op0_register, iced_x86.Instruction.op1_register, iced_x86.Instruction.op2_register, iced_x86.Instruction.op3_register or iced_x86.Instruction.op4_register depending on operand number. See also iced_x86.Instruction.op_register.

iced_x86.OpKind.NEAR_BRANCH16: int = 1

Near 16-bit branch. This operand kind uses iced_x86.Instruction.near_branch16

iced_x86.OpKind.NEAR_BRANCH32: int = 2

Near 32-bit branch. This operand kind uses iced_x86.Instruction.near_branch32

iced_x86.OpKind.NEAR_BRANCH64: int = 3

Near 64-bit branch. This operand kind uses iced_x86.Instruction.near_branch64

iced_x86.OpKind.FAR_BRANCH16: int = 4

Far 16-bit branch. This operand kind uses iced_x86.Instruction.far_branch16 and iced_x86.Instruction.far_branch_selector

iced_x86.OpKind.FAR_BRANCH32: int = 5

Far 32-bit branch. This operand kind uses iced_x86.Instruction.far_branch32 and iced_x86.Instruction.far_branch_selector

iced_x86.OpKind.IMMEDIATE8: int = 6

8-bit constant. This operand kind uses iced_x86.Instruction.immediate8

iced_x86.OpKind.IMMEDIATE8_2ND: int = 7

8-bit constant used by the ENTER, EXTRQ, INSERTQ instructions. This operand kind uses iced_x86.Instruction.immediate8_2nd

iced_x86.OpKind.IMMEDIATE16: int = 8

16-bit constant. This operand kind uses iced_x86.Instruction.immediate16

iced_x86.OpKind.IMMEDIATE32: int = 9

32-bit constant. This operand kind uses iced_x86.Instruction.immediate32

iced_x86.OpKind.IMMEDIATE64: int = 10

64-bit constant. This operand kind uses iced_x86.Instruction.immediate64

iced_x86.OpKind.IMMEDIATE8TO16: int = 11

An 8-bit value sign extended to 16 bits. This operand kind uses iced_x86.Instruction.immediate8to16

iced_x86.OpKind.IMMEDIATE8TO32: int = 12

An 8-bit value sign extended to 32 bits. This operand kind uses iced_x86.Instruction.immediate8to32

iced_x86.OpKind.IMMEDIATE8TO64: int = 13

An 8-bit value sign extended to 64 bits. This operand kind uses iced_x86.Instruction.immediate8to64

iced_x86.OpKind.IMMEDIATE32TO64: int = 14

A 32-bit value sign extended to 64 bits. This operand kind uses iced_x86.Instruction.immediate32to64

iced_x86.OpKind.MEMORY_SEG_SI: int = 15

seg:[SI]. This operand kind uses iced_x86.Instruction.memory_size, iced_x86.Instruction.memory_segment, iced_x86.Instruction.segment_prefix

iced_x86.OpKind.MEMORY_SEG_ESI: int = 16

seg:[ESI]. This operand kind uses iced_x86.Instruction.memory_size, iced_x86.Instruction.memory_segment, iced_x86.Instruction.segment_prefix

iced_x86.OpKind.MEMORY_SEG_RSI: int = 17

seg:[RSI]. This operand kind uses iced_x86.Instruction.memory_size, iced_x86.Instruction.memory_segment, iced_x86.Instruction.segment_prefix

iced_x86.OpKind.MEMORY_SEG_DI: int = 18

seg:[DI]. This operand kind uses iced_x86.Instruction.memory_size, iced_x86.Instruction.memory_segment, iced_x86.Instruction.segment_prefix

iced_x86.OpKind.MEMORY_SEG_EDI: int = 19

seg:[EDI]. This operand kind uses iced_x86.Instruction.memory_size, iced_x86.Instruction.memory_segment, iced_x86.Instruction.segment_prefix

iced_x86.OpKind.MEMORY_SEG_RDI: int = 20

seg:[RDI]. This operand kind uses iced_x86.Instruction.memory_size, iced_x86.Instruction.memory_segment, iced_x86.Instruction.segment_prefix

iced_x86.OpKind.MEMORY_ESDI: int = 21

ES:[DI]. This operand kind uses iced_x86.Instruction.memory_size

iced_x86.OpKind.MEMORY_ESEDI: int = 22

ES:[EDI]. This operand kind uses iced_x86.Instruction.memory_size

iced_x86.OpKind.MEMORY_ESRDI: int = 23

ES:[RDI]. This operand kind uses iced_x86.Instruction.memory_size

iced_x86.OpKind.MEMORY: int = 24

Memory operand.

This operand kind uses iced_x86.Instruction.memory_displ_size, iced_x86.Instruction.memory_size, iced_x86.Instruction.memory_index_scale, iced_x86.Instruction.memory_displacement, iced_x86.Instruction.memory_base, iced_x86.Instruction.memory_index, iced_x86.Instruction.memory_segment, iced_x86.Instruction.segment_prefix