X86 Encoder Decoder
xed_decoded_inst_s Struct Reference

The main container for instructions. More...

#include <xed-decoded-inst.h>

Data Fields

union {
   const xed_uint8_t *   _dec
 
   xed_uint8_t *   _enc
 
_byte_array
 
xed_uint8_t _decoded_length
 
const xed_inst_t_inst
 when we decode an instruction, we set the _inst and get the properites of that instruction here. More...
 
xed_operand_storage_t _operands
 The _operands are storage for information discovered during decoding. More...
 
union {
   xed_uint64_t   user_data
 
u
 

Detailed Description

The main container for instructions.

After decode, it holds an array of operands with derived information from decode and also valid xed_inst_t pointer which describes the operand templates and the operand order. See Decoding Instructions for API documentation.

Field Documentation

◆ _byte_array

union { ... } _byte_array

◆ _dec

const xed_uint8_t* _dec

◆ _decoded_length

xed_uint8_t _decoded_length

◆ _enc

xed_uint8_t* _enc

◆ _inst

const xed_inst_t* _inst

when we decode an instruction, we set the _inst and get the properites of that instruction here.

This also points to the operands template array.

◆ _operands

The _operands are storage for information discovered during decoding.

They are also used by encode. The accessors for these operands all have the form xed3_operand_{get,set}_*(). They should be considered internal and subject to change over time. It is preferred that you use xed_decoded_inst_*() or the xed_operand_values_*() functions when available.

◆ u

union { ... } u

◆ user_data

xed_uint64_t user_data

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