lvar_locator_t Struct Reference

Local variable locator. More...

Inheritance diagram for lvar_locator_t:

Public Member Functions

 lvar_locator_t (const vdloc_t &loc, ea_t ea)
sval_t get_stkoff (void) const
 Get offset of the varialbe in the stack frame. More...
bool is_reg1 (void) const
 Is variable located on one register?
bool is_reg2 (void) const
 Is variable located on two registers?
bool is_reg_var (void) const
 Is variable located on register(s)?
bool is_stk_var (void) const
 Is variable located on the stack?
bool is_scattered (void) const
 Is variable scattered?
mreg_t get_reg1 (void) const
 Get the register number of the variable.
mreg_t get_reg2 (void) const
 Get the number of the second register (works only for ALOC_REG2 lvars)
const scattered_aloc_t & get_scattered (void) const
 Get information about scattered variable.
scattered_aloc_t & get_scattered (void)
 DECLARE_COMPARISONS (lvar_locator_t)
const char * dstr (void) const

Public Attributes

vdloc_t location
 Variable location.
ea_t defea
 Definition address. More...

Detailed Description

Local variable locator.

Local variables are located using definition ea and location. Each variable must have a unique locator, this is how we tell them apart.

Definition at line 1160 of file hexrays.hpp.

Member Function Documentation

◆ get_stkoff()

sval_t lvar_locator_t::get_stkoff ( void  ) const

Get offset of the varialbe in the stack frame.

a non-negative value for stack variables. The value is an offset from the bottom of the stack frame in terms of vd-offsets. negative values mean error (not a stack variable)

Definition at line 1174 of file hexrays.hpp.

Member Data Documentation

◆ defea

ea_t lvar_locator_t::defea

Definition address.

The address of an instruction that initializes the variable. This value is assigned to each lvar by lvar allocator. BADADDR for function arguments


Definition at line 1163 of file hexrays.hpp.