Rizin
unix-like reverse engineering framework and cli tools
rz_analysis_il_config_t Struct Reference

Description of the global context of an RzAnalysisILVM. More...

#include <rz_analysis.h>

Public Attributes

ut32 pc_size
 size of the program counter in bits More...
 
bool big_endian
 
RZ_NULLABLE const char ** reg_bindings
 
ut32 mem_key_size
 address size for memory 0, bound against IO More...
 
RzPVector labels
 global labels, primarily for syscall/hook callbacks More...
 
RZ_NULLABLE RzAnalysisILInitStateinit_state
 optional, initial contents for variables/registers, etc. More...
 

Detailed Description

Description of the global context of an RzAnalysisILVM.

This defines all information needed to initialize an IL vm in order to run in a declarative way, in particular:

  • Size of the program counter: given explicitly in pc_size
  • Endian: given explicitly in big_endian
  • Memories: currently always one memory with index 0 bound against IO, with key size given by mem_key_size and value size of 8
  • Registers: given explicitly in reg_bindings or derived from the register profile with rz_il_reg_binding_derive()
  • Labels: given explicitly in labels
  • Initial State of Variables: optionally given in init_state

Definition at line 1134 of file rz_analysis.h.

Member Data Documentation

◆ big_endian

bool rz_analysis_il_config_t::big_endian

Definition at line 1136 of file rz_analysis.h.

Referenced by setup_vm_from_config().

◆ init_state

RZ_NULLABLE RzAnalysisILInitState* rz_analysis_il_config_t::init_state

optional, initial contents for variables/registers, etc.

Definition at line 1144 of file rz_analysis.h.

Referenced by il_config().

◆ labels

RzPVector rz_analysis_il_config_t::labels

global labels, primarily for syscall/hook callbacks

Definition at line 1143 of file rz_analysis.h.

Referenced by rz_analysis_il_config_free(), and setup_vm_from_config().

◆ mem_key_size

ut32 rz_analysis_il_config_t::mem_key_size

address size for memory 0, bound against IO

Definition at line 1142 of file rz_analysis.h.

Referenced by setup_vm_from_config().

◆ pc_size

ut32 rz_analysis_il_config_t::pc_size

size of the program counter in bits

Definition at line 1135 of file rz_analysis.h.

Referenced by setup_vm_from_config().

◆ reg_bindings

RZ_NULLABLE const char** rz_analysis_il_config_t::reg_bindings

Optional null-terminated array of registers to bind to global vars of the same name. If not specified, rz_il_reg_binding_derive will be used.

Definition at line 1141 of file rz_analysis.h.

Referenced by setup_regs().


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