Value interval (register or stack range) More...
#include <hexrays.hpp>

Public Member Functions | |
vivl_t (mopt_t _type=mop_z, sval_t _off=-1, int _size=0) | |
vivl_t (const class chain_t &ch) | |
vivl_t (const mop_t &op) | |
void | set (mopt_t _type, sval_t _off, int _size=0) |
void | set (const voff_t &voff, int _size) |
void | set_stkoff (sval_t stkoff, int sz=0) |
void | set_reg (mreg_t mreg, int sz=0) |
bool | extend_to_cover (const vivl_t &r) |
Extend a value interval using another value interval of the same type. More... | |
uval_t | intersect (const vivl_t &r) |
Intersect value intervals the same type. More... | |
bool | overlap (const vivl_t &r) const |
Do two value intervals overlap? More... | |
bool | includes (const vivl_t &r) const |
Does our value interval include another? More... | |
bool | contains (const voff_t &voff2) const |
Does our value interval contain the specified value offset? More... | |
DECLARE_COMPARISONS (vivl_t) | |
bool | operator== (const mop_t &mop) const |
void | print (qstring *vout) const |
const char * | dstr () const |
![]() | |
voff_t (mopt_t _type, sval_t _off) | |
voff_t (const mop_t &op) | |
void | set (mopt_t _type, sval_t _off) |
void | set_stkoff (sval_t stkoff) |
void | set_reg (mreg_t mreg) |
void | undef () |
bool | defined () const |
bool | is_reg () const |
bool | is_stkoff () const |
mreg_t | get_reg () const |
sval_t | get_stkoff () const |
void | inc (sval_t delta) |
voff_t | add (int width) const |
sval_t | diff (const voff_t &r) const |
DECLARE_COMPARISONS (voff_t) | |
Public Attributes | |
int | size |
Interval size in bytes. More... | |
![]() | |
sval_t | off |
register number or stack offset More... | |
mopt_t | type |
mop_r - register, mop_S - stack, mop_z - undefined More... | |
Detailed Description
Value interval (register or stack range)
Definition at line 3236 of file hexrays.hpp.
Constructor & Destructor Documentation
◆ vivl_t() [1/2]
Definition at line 3240 of file hexrays.hpp.
◆ vivl_t() [2/2]
vivl_t::vivl_t | ( | const mop_t & | op | ) |
Definition at line 3243 of file hexrays.hpp.
Member Function Documentation
◆ contains()
bool vivl_t::contains | ( | const voff_t & | voff2 | ) | const |
Does our value interval contain the specified value offset?
Definition at line 3275 of file hexrays.hpp.
References voff_t::off, and voff_t::type.
◆ DECLARE_COMPARISONS()
vivl_t::DECLARE_COMPARISONS | ( | vivl_t | ) |
Definition at line 3282 of file hexrays.hpp.
◆ dstr()
const char * vivl_t::dstr | ( | void | ) | const |
Definition at line 10790 of file hexrays.hpp.
◆ extend_to_cover()
bool vivl_t::extend_to_cover | ( | const vivl_t & | r | ) |
Extend a value interval using another value interval of the same type.
- Returns
- success
Definition at line 10770 of file hexrays.hpp.
◆ includes()
bool vivl_t::includes | ( | const vivl_t & | r | ) | const |
Does our value interval include another?
Definition at line 3268 of file hexrays.hpp.
References voff_t::off, size, and voff_t::type.
◆ intersect()
uval_t vivl_t::intersect | ( | const vivl_t & | r | ) |
Intersect value intervals the same type.
- Returns
- size of the resulting intersection
Definition at line 10776 of file hexrays.hpp.
◆ operator==()
bool vivl_t::operator== | ( | const mop_t & | mop | ) | const |
Definition at line 3287 of file hexrays.hpp.
◆ overlap()
bool vivl_t::overlap | ( | const vivl_t & | r | ) | const |
Do two value intervals overlap?
Definition at line 3262 of file hexrays.hpp.
References voff_t::off, size, and voff_t::type.
◆ print()
void vivl_t::print | ( | qstring * | vout | ) | const |
Definition at line 10784 of file hexrays.hpp.
◆ set() [1/2]
void vivl_t::set | ( | const voff_t & | voff, |
int | _size | ||
) |
Definition at line 3248 of file hexrays.hpp.
◆ set() [2/2]
void vivl_t::set | ( | mopt_t | _type, |
sval_t | _off, | ||
int | _size = 0 |
||
) |
Definition at line 3246 of file hexrays.hpp.
◆ set_reg()
void vivl_t::set_reg | ( | mreg_t | mreg, |
int | sz = 0 |
||
) |
Definition at line 3251 of file hexrays.hpp.
◆ set_stkoff()
void vivl_t::set_stkoff | ( | sval_t | stkoff, |
int | sz = 0 |
||
) |
Definition at line 3250 of file hexrays.hpp.
Member Data Documentation
◆ size
int vivl_t::size |
Interval size in bytes.
Definition at line 3238 of file hexrays.hpp.
Referenced by includes(), and overlap().