Zydis: ZydisDecodedInstruction_ Struct Reference

Zydis v4.1.0

Loading...
Searching...
No Matches
Data Fields
ZydisDecodedInstruction_ Struct Reference

Information about a decoded instruction. More...

`#include <DecoderTypes.h>`

## Data Fields
ZydisMachineMode | machine_mode
| The machine mode used to decode this instruction.
ZydisMnemonic | mnemonic
| The instruction-mnemonic.
ZyanU8 | length
| The length of the decoded instruction.
ZydisInstructionEncoding | encoding
| The instruction-encoding (`LEGACY`, `3DNOW`, `VEX`, `EVEX`, `XOP`).
ZydisOpcodeMap | opcode_map
| The opcode-map.
ZyanU8 | opcode
| The instruction-opcode.
ZyanU8 | stack_width
| The stack width.
ZyanU8 | operand_width
| The effective operand width.
ZyanU8 | address_width
| The effective address width.
ZyanU8 | operand_count
| The number of instruction-operands.
ZyanU8 | operand_count_visible
| The number of explicit (visible) instruction-operands.
ZydisInstructionAttributes | attributes
| See Instruction attributes.
const ZydisAccessedFlags * | cpu_flags
| Information about CPU flags accessed by the instruction.
const ZydisAccessedFlags * | fpu_flags
| Information about FPU flags accessed by the instruction.
ZydisDecodedInstructionAvx | avx
| Extended info for `AVX` instructions.
ZydisDecodedInstructionMeta | meta
| Meta info.
ZydisDecodedInstructionRaw | raw
| Detailed info about different instruction-parts like `ModRM`, `SIB` or encoding-prefixes.

## Detailed Description

Information about a decoded instruction.

## Field Documentation

## ◆ address_width

ZyanU8 address_width

The effective address width.

## ◆ attributes

ZydisInstructionAttributes attributes

See Instruction attributes.

## ◆ avx

ZydisDecodedInstructionAvx avx

Extended info for `AVX` instructions.

## ◆ cpu_flags

const ZydisAccessedFlags* cpu_flags

Information about CPU flags accessed by the instruction.

The bits in the masks correspond to the actual bits in the `FLAGS/EFLAGS/RFLAGS` register. See CPU flags.

## ◆ encoding

ZydisInstructionEncoding encoding

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

## ◆ fpu_flags

const ZydisAccessedFlags* fpu_flags

Information about FPU flags accessed by the instruction.

See FPU flags.

## ◆ length

ZyanU8 length

The length of the decoded instruction.

## ◆ machine_mode

ZydisMachineMode machine_mode

The machine mode used to decode this instruction.

## ◆ meta

ZydisDecodedInstructionMeta meta

Meta info.

## ◆ 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.

Explicit and implicit 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 and implicit operands.

## ◆ operand_count_visible

ZyanU8 operand_count_visible

The number of explicit (visible) instruction-operands.

Explicit and implicit operands are guaranteed to be in the front and ordered as they are printed by the formatter in `Intel` mode.

## ◆ operand_width

ZyanU8 operand_width

The effective operand width.

## ◆ raw

ZydisDecodedInstructionRaw raw

Detailed info about different instruction-parts like `ModRM`, `SIB` or encoding-prefixes.

## ◆ stack_width

ZyanU8 stack_width

The stack width.

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

- include/Zydis/DecoderTypes.h