Latest available version: IDA and decompilers v8.4.240320sp1 see all releases
Hex-Rays logo State-of-the-art binary code analysis tools
email icon

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

#include <hexrays.hpp>

Inheritance diagram for scif_t:
vdloc_t

Public Member Functions

 scif_t (mba_t *_mba, tinfo_t *tif, qstring *n=nullptr)
 
scif_toperator= (const vdloc_t &loc)
 
- Public Member Functions inherited from vdloc_t
int reg1 () 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 mba_t *mb, int size) const
 

Public Attributes

mba_tmba
 Pointer to the parent mba_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 2335 of file hexrays.hpp.

Constructor & Destructor Documentation

◆ scif_t()

scif_t::scif_t ( mba_t _mba,
tinfo_t *  tif,
qstring *  n = nullptr 
)

Definition at line 2353 of file hexrays.hpp.

Member Function Documentation

◆ operator=()

scif_t & scif_t::operator= ( const vdloc_t loc)

Definition at line 2359 of file hexrays.hpp.

Member Data Documentation

◆ mba

mba_t* scif_t::mba

Pointer to the parent mba_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 2342 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 2347 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 2351 of file hexrays.hpp.