scif_t Struct Reference

Scattered operand info. Used for mop_sc. More...

Inheritance diagram for scif_t:
vdloc_t

Public Member Functions

 scif_t (mbl_array_t *_mba, qstring *n, tinfo_t *tif)
 
scif_toperator= (const vdloc_t &loc)
 
- Public Member Functions inherited from vdloc_t
int reg1 (void) const
 
void _set_reg1 (int r1)
 
void set_reg1 (int r1)
 
const char * dstr (int width=0) const
 
 DECLARE_COMPARISONS (vdloc_t)
 
bool is_aliasable (const mbl_array_t *mb, int size) const
 

Public Attributes

mbl_array_tmba
 Pointer to the parent mbl_array_t object. More...
 
qstring name
 Usually scattered operands are created from a function prototype, which has the name information. More...
 
tinfo_t type
 Scattered operands always have type info assigned to them because without it we won't be able to manipulte them. More...
 

Detailed Description

Scattered operand info. Used for mop_sc.

Definition at line 2174 of file hexrays.hpp.

Member Data Documentation

◆ mba

mbl_array_t* scif_t::mba

Pointer to the parent mbl_array_t object.

Some operations may convert a scattered operand into something simpler, (a stack operand, for example). We will need to create stkvar_ref_t at that moment, this is why we need this pointer. See notes for lvar_ref_t::mba.

Definition at line 2181 of file hexrays.hpp.

◆ name

qstring scif_t::name

Usually scattered operands are created from a function prototype, which has the name information.

We preserve it and use it to name the corresponding local variable.

Definition at line 2186 of file hexrays.hpp.

◆ type

tinfo_t scif_t::type

Scattered operands always have type info assigned to them because without it we won't be able to manipulte them.

Definition at line 2190 of file hexrays.hpp.