Zydis  v3.2.1
ZydisDecodedInstruction_ Struct Reference

Information about a decoded instruction. More...

#include <DecoderTypes.h>

Collaboration diagram for ZydisDecodedInstruction_:

Data Structures

struct  ZydisDecodedInstructionAccessedFlags_
 Information about accessed CPU flags. More...
 
struct  ZydisDecodedInstructionAvx_
 Extended info for AVX instructions. More...
 
struct  ZydisDecodedInstructionMeta_
 Meta info. More...
 
struct  ZydisDecodedInstructionRaw_
 Detailed info about different instruction-parts like ModRM, SIB or encoding-prefixes. More...
 

Data Fields

ZydisMachineMode machine_mode
 The machine mode used to decode this instruction. More...
 
ZydisMnemonic mnemonic
 The instruction-mnemonic. More...
 
ZyanU8 length
 The length of the decoded instruction. More...
 
ZydisInstructionEncoding encoding
 The instruction-encoding (LEGACY, 3DNOW, VEX, EVEX, XOP). More...
 
ZydisOpcodeMap opcode_map
 The opcode-map. More...
 
ZyanU8 opcode
 The instruction-opcode. More...
 
ZyanU8 stack_width
 The stack width. More...
 
ZyanU8 operand_width
 The effective operand width. More...
 
ZyanU8 address_width
 The effective address width. More...
 
ZyanU8 operand_count
 The number of instruction-operands. More...
 
ZydisDecodedOperand operands [ZYDIS_MAX_OPERAND_COUNT]
 Detailed info for all instruction operands. More...
 
ZydisInstructionAttributes attributes
 Instruction attributes. More...
 
struct ZydisDecodedInstruction_::ZydisDecodedInstructionAccessedFlags_ accessed_flags [ZYDIS_CPUFLAG_MAX_VALUE+1]
 
ZydisCPUFlags cpu_flags_read
 A mask containing the CPU flags read by the instruction. More...
 
ZydisCPUFlags cpu_flags_written
 A mask containing the CPU flags written by the instruction. More...
 
ZydisFPUFlags fpu_flags_read
 A mask containing the FPU flags read by the instruction. More...
 
ZydisFPUFlags fpu_flags_written
 A mask containing the FPU flags written by the instruction. More...
 
struct ZydisDecodedInstruction_::ZydisDecodedInstructionAvx_ avx
 
struct ZydisDecodedInstruction_::ZydisDecodedInstructionMeta_ meta
 
struct ZydisDecodedInstruction_::ZydisDecodedInstructionRaw_ raw
 

Detailed Description

Information about a decoded instruction.

Field Documentation

◆ accessed_flags

◆ address_width

ZyanU8 address_width

The effective address width.

◆ attributes

Instruction attributes.

◆ avx

◆ cpu_flags_read

ZydisCPUFlags cpu_flags_read

A mask containing the CPU flags read by the instruction.

The bits in this mask correspond to the actual bits in the FLAGS/EFLAGS/RFLAGS register.

This mask includes the actions TESTED and TESTED_MODIFIED.

◆ cpu_flags_written

ZydisCPUFlags cpu_flags_written

A mask containing the CPU flags written by the instruction.

The bits in this mask correspond to the actual bits in the FLAGS/EFLAGS/RFLAGS register.

This mask includes the actions TESTED_MODIFIED, SET_0, SET_1 and UNDEFINED.

◆ encoding

The instruction-encoding (LEGACY, 3DNOW, VEX, EVEX, XOP).

◆ fpu_flags_read

ZydisFPUFlags fpu_flags_read

A mask containing the FPU flags read by the instruction.

◆ fpu_flags_written

ZydisFPUFlags fpu_flags_written

A mask containing the FPU flags written by the instruction.

◆ length

ZyanU8 length

The length of the decoded instruction.

◆ machine_mode

ZydisMachineMode machine_mode

The machine mode used to decode this instruction.

◆ meta

◆ mnemonic

ZydisMnemonic mnemonic

The instruction-mnemonic.

◆ opcode

ZyanU8 opcode

The instruction-opcode.

◆ opcode_map

ZydisOpcodeMap opcode_map

The opcode-map.

◆ operand_count

ZyanU8 operand_count

The number of instruction-operands.

◆ operand_width

ZyanU8 operand_width

The effective operand width.

◆ operands

Detailed info for all instruction operands.

Explicit operands are guaranteed to be in the front and ordered as they are printed by the formatter in Intel mode. No assumptions can be made about the order of hidden operands, except that they always located behind the explicit operands.

◆ raw

◆ stack_width

ZyanU8 stack_width

The stack width.


The documentation for this struct was generated from the following file: