GCC Middle and Back End API Reference
ana::region_model_manager Class Reference

#include <region-model-manager.h>

Collaboration diagram for ana::region_model_manager:

Public Member Functions

 region_model_manager (logger *logger=NULL)
 
 ~region_model_manager ()
 
unsigned get_num_symbols () const
 
unsigned alloc_symbol_id ()
 
const call_stringget_empty_call_string () const
 
const svalueget_or_create_constant_svalue (tree type, tree cst_expr)
 
const svalueget_or_create_constant_svalue (tree cst_expr)
 
const svalueget_or_create_int_cst (tree type, const poly_wide_int_ref &cst)
 
const svalueget_or_create_null_ptr (tree pointer_type)
 
const svalueget_or_create_unknown_svalue (tree type)
 
const svalueget_or_create_setjmp_svalue (const setjmp_record &r, tree type)
 
const svalueget_or_create_poisoned_svalue (enum poison_kind kind, tree type)
 
const svalueget_or_create_initial_value (const region *reg, bool check_poisoned=true)
 
const svalueget_ptr_svalue (tree ptr_type, const region *pointee)
 
const svalueget_or_create_unaryop (tree type, enum tree_code op, const svalue *arg)
 
const svalueget_or_create_cast (tree type, const svalue *arg)
 
const svalueget_or_create_binop (tree type, enum tree_code op, const svalue *arg0, const svalue *arg1)
 
const svalueget_or_create_sub_svalue (tree type, const svalue *parent_svalue, const region *subregion)
 
const svalueget_or_create_repeated_svalue (tree type, const svalue *outer_size, const svalue *inner_svalue)
 
const svalueget_or_create_bits_within (tree type, const bit_range &bits, const svalue *inner_svalue)
 
const svalueget_or_create_unmergeable (const svalue *arg)
 
const svalueget_or_create_widening_svalue (tree type, const function_point &point, const svalue *base_svalue, const svalue *iter_svalue)
 
const svalueget_or_create_compound_svalue (tree type, const binding_map &map)
 
const svalueget_or_create_conjured_svalue (tree type, const gimple *stmt, const region *id_reg, const conjured_purge &p, unsigned idx=0)
 
const svalueget_or_create_asm_output_svalue (tree type, const gasm *asm_stmt, unsigned output_idx, const vec< const svalue * > &inputs)
 
const svalueget_or_create_asm_output_svalue (tree type, const char *asm_string, unsigned output_idx, unsigned num_outputs, const vec< const svalue * > &inputs)
 
const svalueget_or_create_const_fn_result_svalue (tree type, tree fndecl, const vec< const svalue * > &inputs)
 
const svaluemaybe_get_char_from_string_cst (tree string_cst, tree byte_offset_cst)
 
const svaluecreate_unique_svalue (tree type)
 
const root_regionget_root_region () const
 
const stack_regionget_stack_region () const
 
const heap_regionget_heap_region () const
 
const code_regionget_code_region () const
 
const globals_regionget_globals_region () const
 
const errno_regionget_errno_region () const
 
const function_regionget_region_for_fndecl (tree fndecl)
 
const label_regionget_region_for_label (tree label)
 
const decl_regionget_region_for_global (tree expr)
 
const regionget_field_region (const region *parent, tree field)
 
const regionget_element_region (const region *parent, tree element_type, const svalue *index)
 
const regionget_offset_region (const region *parent, tree type, const svalue *byte_offset)
 
const regionget_sized_region (const region *parent, tree type, const svalue *byte_size_sval)
 
const regionget_cast_region (const region *original_region, tree type)
 
const frame_regionget_frame_region (const frame_region *calling_frame, const function &fun)
 
const regionget_symbolic_region (const svalue *sval)
 
const string_regionget_region_for_string (tree string_cst)
 
const regionget_bit_range (const region *parent, tree type, const bit_range &bits)
 
const var_arg_regionget_var_arg_region (const frame_region *parent, unsigned idx)
 
const regionget_unknown_symbolic_region (tree region_type)
 
const regionget_region_for_unexpected_tree_code (region_model_context *ctxt, tree t, const dump_location_t &loc)
 
store_managerget_store_manager ()
 
bounded_ranges_managerget_range_manager () const
 
known_function_managerget_known_function_manager ()
 
const regionget_or_create_region_for_heap_alloc (const bitmap &base_regs_in_use)
 
const regioncreate_region_for_alloca (const frame_region *frame)
 
void log_stats (logger *logger, bool show_objs) const
 
void begin_checking_feasibility (void)
 
void end_checking_feasibility (void)
 
loggerget_logger () const
 
void dump_untracked_regions () const
 
const svaluemaybe_fold_binop (tree type, enum tree_code op, const svalue *arg0, const svalue *arg1)
 

Private Types

typedef hash_map< constant_svalue::key_t, constant_svalue * > constants_map_t
 
typedef hash_map< tree, unknown_svalue * > unknowns_map_t
 
typedef hash_map< poisoned_svalue::key_t, poisoned_svalue * > poisoned_values_map_t
 
typedef hash_map< setjmp_svalue::key_t, setjmp_svalue * > setjmp_values_map_t
 
typedef hash_map< const region *, initial_svalue * > initial_values_map_t
 
typedef hash_map< region_svalue::key_t, region_svalue * > pointer_values_map_t
 
typedef hash_map< unaryop_svalue::key_t, unaryop_svalue * > unaryop_values_map_t
 
typedef hash_map< binop_svalue::key_t, binop_svalue * > binop_values_map_t
 
typedef hash_map< sub_svalue::key_t, sub_svalue * > sub_values_map_t
 
typedef hash_map< repeated_svalue::key_t, repeated_svalue * > repeated_values_map_t
 
typedef hash_map< bits_within_svalue::key_t, bits_within_svalue * > bits_within_values_map_t
 
typedef hash_map< const svalue *, unmergeable_svalue * > unmergeable_values_map_t
 
typedef hash_map< widening_svalue::key_t, widening_svalue @endverbatim * > widening_values_map_t
 
typedef hash_map< compound_svalue::key_t, compound_svalue * > compound_values_map_t
 
typedef hash_map< conjured_svalue::key_t, conjured_svalue * > conjured_values_map_t
 
typedef hash_map< asm_output_svalue::key_t, asm_output_svalue * > asm_output_values_map_t
 
typedef hash_map< const_fn_result_svalue::key_t, const_fn_result_svalue * > const_fn_result_values_map_t
 
typedef hash_map< tree, function_region * > fndecls_map_t
 
typedef fndecls_map_t::iterator fndecls_iterator_t
 
typedef hash_map< tree, label_region * > labels_map_t
 
typedef labels_map_t::iterator labels_iterator_t
 
typedef hash_map< tree, decl_region * > globals_map_t
 
typedef globals_map_t::iterator globals_iterator_t
 
typedef hash_map< tree, string_region * > string_map_t
 

Private Member Functions

bool too_complex_p (const complexity &c) const
 
bool reject_if_too_complex (svalue *sval)
 
const svaluemaybe_fold_unaryop (tree type, enum tree_code op, const svalue *arg)
 
const svaluemaybe_fold_sub_svalue (tree type, const svalue *parent_svalue, const region *subregion)
 
const svaluemaybe_fold_repeated_svalue (tree type, const svalue *outer_size, const svalue *inner_svalue)
 
const svaluemaybe_fold_bits_within_svalue (tree type, const bit_range &bits, const svalue *inner_svalue)
 
const svaluemaybe_undo_optimize_bit_field_compare (tree type, const compound_svalue *compound_sval, tree cst, const svalue *arg1)
 
const svaluemaybe_fold_asm_output_svalue (tree type, const vec< const svalue * > &inputs)
 

Private Attributes

loggerm_logger
 
unsigned m_next_symbol_id
 
const call_string m_empty_call_string
 
root_region m_root_region
 
stack_region m_stack_region
 
heap_region m_heap_region
 
constants_map_t m_constants_map
 
unknowns_map_t m_unknowns_map
 
const unknown_svaluem_unknown_NULL
 
poisoned_values_map_t m_poisoned_values_map
 
setjmp_values_map_t m_setjmp_values_map
 
initial_values_map_t m_initial_values_map
 
pointer_values_map_t m_pointer_values_map
 
unaryop_values_map_t m_unaryop_values_map
 
binop_values_map_t m_binop_values_map
 
sub_values_map_t m_sub_values_map
 
repeated_values_map_t m_repeated_values_map
 
bits_within_values_map_t m_bits_within_values_map
 
unmergeable_values_map_t m_unmergeable_values_map
 
widening_values_map_t m_widening_values_map
 
compound_values_map_t m_compound_values_map
 
conjured_values_map_t m_conjured_values_map
 
asm_output_values_map_t m_asm_output_values_map
 
const_fn_result_values_map_t m_const_fn_result_values_map
 
bool m_checking_feasibility
 
auto_delete_vec< svaluem_managed_dynamic_svalues
 
complexity m_max_complexity
 
code_region m_code_region
 
fndecls_map_t m_fndecls_map
 
labels_map_t m_labels_map
 
globals_region m_globals_region
 
globals_map_t m_globals_map
 
thread_local_region m_thread_local_region
 
errno_region m_errno_region
 
consolidation_map< field_regionm_field_regions
 
consolidation_map< element_regionm_element_regions
 
consolidation_map< offset_regionm_offset_regions
 
consolidation_map< sized_regionm_sized_regions
 
consolidation_map< cast_regionm_cast_regions
 
consolidation_map< frame_regionm_frame_regions
 
consolidation_map< symbolic_regionm_symbolic_regions
 
string_map_t m_string_map
 
consolidation_map< bit_range_regionm_bit_range_regions
 
consolidation_map< var_arg_regionm_var_arg_regions
 
store_manager m_store_mgr
 
bounded_ranges_managerm_range_mgr
 
known_function_manager m_known_fn_mgr
 
auto_delete_vec< regionm_managed_dynamic_regions
 

Detailed Description

A class responsible for owning and consolidating region and svalue
instances.
region and svalue instances are immutable as far as clients are
concerned, so they are provided as "const" ptrs.   

Member Typedef Documentation

◆ asm_output_values_map_t

◆ binop_values_map_t

◆ bits_within_values_map_t

◆ compound_values_map_t

◆ conjured_values_map_t

◆ const_fn_result_values_map_t

◆ constants_map_t

◆ fndecls_iterator_t

typedef fndecls_map_t::iterator ana::region_model_manager::fndecls_iterator_t
private

◆ fndecls_map_t

◆ globals_iterator_t

typedef globals_map_t::iterator ana::region_model_manager::globals_iterator_t
private

◆ globals_map_t

◆ initial_values_map_t

◆ labels_iterator_t

typedef labels_map_t::iterator ana::region_model_manager::labels_iterator_t
private

◆ labels_map_t

◆ pointer_values_map_t

◆ poisoned_values_map_t

◆ repeated_values_map_t

◆ setjmp_values_map_t

◆ string_map_t

◆ sub_values_map_t

◆ unaryop_values_map_t

◆ unknowns_map_t

◆ unmergeable_values_map_t

◆ widening_values_map_t

Constructor & Destructor Documentation

◆ region_model_manager()

ana::region_model_manager::region_model_manager ( logger * logger = NULL)

◆ ~region_model_manager()

ana::region_model_manager::~region_model_manager ( )

Member Function Documentation

◆ alloc_symbol_id()

unsigned ana::region_model_manager::alloc_symbol_id ( )
inline

References m_next_symbol_id.

◆ begin_checking_feasibility()

void ana::region_model_manager::begin_checking_feasibility ( void )
inline

◆ create_region_for_alloca()

const region * ana::region_model_manager::create_region_for_alloca ( const frame_region * frame)

◆ create_unique_svalue()

const svalue * ana::region_model_manager::create_unique_svalue ( tree type)

◆ dump_untracked_regions()

void ana::region_model_manager::dump_untracked_regions ( ) const

◆ end_checking_feasibility()

void ana::region_model_manager::end_checking_feasibility ( void )
inline

◆ get_bit_range()

const region * ana::region_model_manager::get_bit_range ( const region * parent,
tree type,
const bit_range & bits )

◆ get_cast_region()

const region * ana::region_model_manager::get_cast_region ( const region * original_region,
tree type )

◆ get_code_region()

const code_region * ana::region_model_manager::get_code_region ( ) const
inline

References m_code_region.

◆ get_element_region()

const region * ana::region_model_manager::get_element_region ( const region * parent,
tree element_type,
const svalue * index )

◆ get_empty_call_string()

const call_string & ana::region_model_manager::get_empty_call_string ( ) const
inline

References m_empty_call_string.

◆ get_errno_region()

const errno_region * ana::region_model_manager::get_errno_region ( ) const
inline

References m_errno_region.

◆ get_field_region()

const region * ana::region_model_manager::get_field_region ( const region * parent,
tree field )

◆ get_frame_region()

const frame_region * ana::region_model_manager::get_frame_region ( const frame_region * calling_frame,
const function & fun )

◆ get_globals_region()

const globals_region * ana::region_model_manager::get_globals_region ( ) const
inline

References m_globals_region.

◆ get_heap_region()

const heap_region * ana::region_model_manager::get_heap_region ( ) const
inline

References m_heap_region.

◆ get_known_function_manager()

known_function_manager * ana::region_model_manager::get_known_function_manager ( )
inline

◆ get_logger()

logger * ana::region_model_manager::get_logger ( ) const
inline

References m_logger.

◆ get_num_symbols()

unsigned ana::region_model_manager::get_num_symbols ( ) const
inline

References m_next_symbol_id.

◆ get_offset_region()

const region * ana::region_model_manager::get_offset_region ( const region * parent,
tree type,
const svalue * byte_offset )

◆ get_or_create_asm_output_svalue() [1/2]

const svalue * ana::region_model_manager::get_or_create_asm_output_svalue ( tree type,
const char * asm_string,
unsigned output_idx,
unsigned num_outputs,
const vec< const svalue * > & inputs )

◆ get_or_create_asm_output_svalue() [2/2]

const svalue * ana::region_model_manager::get_or_create_asm_output_svalue ( tree type,
const gasm * asm_stmt,
unsigned output_idx,
const vec< const svalue * > & inputs )

◆ get_or_create_binop()

const svalue * ana::region_model_manager::get_or_create_binop ( tree type,
enum tree_code op,
const svalue * arg0,
const svalue * arg1 )

◆ get_or_create_bits_within()

const svalue * ana::region_model_manager::get_or_create_bits_within ( tree type,
const bit_range & bits,
const svalue * inner_svalue )

◆ get_or_create_cast()

const svalue * ana::region_model_manager::get_or_create_cast ( tree type,
const svalue * arg )

◆ get_or_create_compound_svalue()

const svalue * ana::region_model_manager::get_or_create_compound_svalue ( tree type,
const binding_map & map )

◆ get_or_create_conjured_svalue()

const svalue * ana::region_model_manager::get_or_create_conjured_svalue ( tree type,
const gimple * stmt,
const region * id_reg,
const conjured_purge & p,
unsigned idx = 0 )

◆ get_or_create_const_fn_result_svalue()

const svalue * ana::region_model_manager::get_or_create_const_fn_result_svalue ( tree type,
tree fndecl,
const vec< const svalue * > & inputs )

◆ get_or_create_constant_svalue() [1/2]

const svalue * ana::region_model_manager::get_or_create_constant_svalue ( tree cst_expr)

◆ get_or_create_constant_svalue() [2/2]

const svalue * ana::region_model_manager::get_or_create_constant_svalue ( tree type,
tree cst_expr )

◆ get_or_create_initial_value()

const svalue * ana::region_model_manager::get_or_create_initial_value ( const region * reg,
bool check_poisoned = true )

◆ get_or_create_int_cst()

const svalue * ana::region_model_manager::get_or_create_int_cst ( tree type,
const poly_wide_int_ref & cst )

◆ get_or_create_null_ptr()

const svalue * ana::region_model_manager::get_or_create_null_ptr ( tree pointer_type)

◆ get_or_create_poisoned_svalue()

const svalue * ana::region_model_manager::get_or_create_poisoned_svalue ( enum poison_kind kind,
tree type )

◆ get_or_create_region_for_heap_alloc()

const region * ana::region_model_manager::get_or_create_region_for_heap_alloc ( const bitmap & base_regs_in_use)

◆ get_or_create_repeated_svalue()

const svalue * ana::region_model_manager::get_or_create_repeated_svalue ( tree type,
const svalue * outer_size,
const svalue * inner_svalue )

◆ get_or_create_setjmp_svalue()

const svalue * ana::region_model_manager::get_or_create_setjmp_svalue ( const setjmp_record & r,
tree type )

◆ get_or_create_sub_svalue()

const svalue * ana::region_model_manager::get_or_create_sub_svalue ( tree type,
const svalue * parent_svalue,
const region * subregion )

◆ get_or_create_unaryop()

const svalue * ana::region_model_manager::get_or_create_unaryop ( tree type,
enum tree_code op,
const svalue * arg )

◆ get_or_create_unknown_svalue()

const svalue * ana::region_model_manager::get_or_create_unknown_svalue ( tree type)

◆ get_or_create_unmergeable()

const svalue * ana::region_model_manager::get_or_create_unmergeable ( const svalue * arg)

◆ get_or_create_widening_svalue()

const svalue * ana::region_model_manager::get_or_create_widening_svalue ( tree type,
const function_point & point,
const svalue * base_svalue,
const svalue * iter_svalue )

◆ get_ptr_svalue()

const svalue * ana::region_model_manager::get_ptr_svalue ( tree ptr_type,
const region * pointee )

◆ get_range_manager()

bounded_ranges_manager * ana::region_model_manager::get_range_manager ( ) const
inline

◆ get_region_for_fndecl()

const function_region * ana::region_model_manager::get_region_for_fndecl ( tree fndecl)

◆ get_region_for_global()

const decl_region * ana::region_model_manager::get_region_for_global ( tree expr)

◆ get_region_for_label()

const label_region * ana::region_model_manager::get_region_for_label ( tree label)

◆ get_region_for_string()

const string_region * ana::region_model_manager::get_region_for_string ( tree string_cst)

◆ get_region_for_unexpected_tree_code()

const region * ana::region_model_manager::get_region_for_unexpected_tree_code ( region_model_context * ctxt,
tree t,
const dump_location_t & loc )

◆ get_root_region()

const root_region * ana::region_model_manager::get_root_region ( ) const
inline

References m_root_region.

◆ get_sized_region()

const region * ana::region_model_manager::get_sized_region ( const region * parent,
tree type,
const svalue * byte_size_sval )

◆ get_stack_region()

const stack_region * ana::region_model_manager::get_stack_region ( ) const
inline

References m_stack_region.

◆ get_store_manager()

store_manager * ana::region_model_manager::get_store_manager ( )
inline

◆ get_symbolic_region()

const region * ana::region_model_manager::get_symbolic_region ( const svalue * sval)

◆ get_unknown_symbolic_region()

const region * ana::region_model_manager::get_unknown_symbolic_region ( tree region_type)

◆ get_var_arg_region()

const var_arg_region * ana::region_model_manager::get_var_arg_region ( const frame_region * parent,
unsigned idx )

Referenced by remap_enclosing_frame().

◆ log_stats()

void ana::region_model_manager::log_stats ( logger * logger,
bool show_objs ) const

◆ maybe_fold_asm_output_svalue()

const svalue * ana::region_model_manager::maybe_fold_asm_output_svalue ( tree type,
const vec< const svalue * > & inputs )
private

◆ maybe_fold_binop()

const svalue * ana::region_model_manager::maybe_fold_binop ( tree type,
enum tree_code op,
const svalue * arg0,
const svalue * arg1 )

◆ maybe_fold_bits_within_svalue()

const svalue * ana::region_model_manager::maybe_fold_bits_within_svalue ( tree type,
const bit_range & bits,
const svalue * inner_svalue )
private

◆ maybe_fold_repeated_svalue()

const svalue * ana::region_model_manager::maybe_fold_repeated_svalue ( tree type,
const svalue * outer_size,
const svalue * inner_svalue )
private

◆ maybe_fold_sub_svalue()

const svalue * ana::region_model_manager::maybe_fold_sub_svalue ( tree type,
const svalue * parent_svalue,
const region * subregion )
private

◆ maybe_fold_unaryop()

const svalue * ana::region_model_manager::maybe_fold_unaryop ( tree type,
enum tree_code op,
const svalue * arg )
private

◆ maybe_get_char_from_string_cst()

const svalue * ana::region_model_manager::maybe_get_char_from_string_cst ( tree string_cst,
tree byte_offset_cst )

◆ maybe_undo_optimize_bit_field_compare()

const svalue * ana::region_model_manager::maybe_undo_optimize_bit_field_compare ( tree type,
const compound_svalue * compound_sval,
tree cst,
const svalue * arg1 )
private

◆ reject_if_too_complex()

bool ana::region_model_manager::reject_if_too_complex ( svalue * sval)
private

◆ too_complex_p()

bool ana::region_model_manager::too_complex_p ( const complexity & c) const
private

Field Documentation

◆ m_asm_output_values_map

asm_output_values_map_t ana::region_model_manager::m_asm_output_values_map
private

◆ m_binop_values_map

binop_values_map_t ana::region_model_manager::m_binop_values_map
private

◆ m_bit_range_regions

consolidation_map<bit_range_region> ana::region_model_manager::m_bit_range_regions
private

◆ m_bits_within_values_map

bits_within_values_map_t ana::region_model_manager::m_bits_within_values_map
private

◆ m_cast_regions

consolidation_map<cast_region> ana::region_model_manager::m_cast_regions
private

◆ m_checking_feasibility

bool ana::region_model_manager::m_checking_feasibility
private

◆ m_code_region

code_region ana::region_model_manager::m_code_region
private

Referenced by get_code_region().

◆ m_compound_values_map

compound_values_map_t ana::region_model_manager::m_compound_values_map
private

◆ m_conjured_values_map

conjured_values_map_t ana::region_model_manager::m_conjured_values_map
private

◆ m_const_fn_result_values_map

const_fn_result_values_map_t ana::region_model_manager::m_const_fn_result_values_map
private

◆ m_constants_map

constants_map_t ana::region_model_manager::m_constants_map
private

◆ m_element_regions

consolidation_map<element_region> ana::region_model_manager::m_element_regions
private

◆ m_empty_call_string

const call_string ana::region_model_manager::m_empty_call_string
private

Referenced by get_empty_call_string().

◆ m_errno_region

errno_region ana::region_model_manager::m_errno_region
private

Referenced by get_errno_region().

◆ m_field_regions

consolidation_map<field_region> ana::region_model_manager::m_field_regions
private

◆ m_fndecls_map

fndecls_map_t ana::region_model_manager::m_fndecls_map
private

◆ m_frame_regions

consolidation_map<frame_region> ana::region_model_manager::m_frame_regions
private

◆ m_globals_map

globals_map_t ana::region_model_manager::m_globals_map
private

◆ m_globals_region

globals_region ana::region_model_manager::m_globals_region
private

Referenced by get_globals_region().

◆ m_heap_region

heap_region ana::region_model_manager::m_heap_region
private

Referenced by get_heap_region().

◆ m_initial_values_map

initial_values_map_t ana::region_model_manager::m_initial_values_map
private

◆ m_known_fn_mgr

known_function_manager ana::region_model_manager::m_known_fn_mgr
private

◆ m_labels_map

labels_map_t ana::region_model_manager::m_labels_map
private

◆ m_logger

logger* ana::region_model_manager::m_logger
private

Referenced by get_logger().

◆ m_managed_dynamic_regions

auto_delete_vec<region> ana::region_model_manager::m_managed_dynamic_regions
private

◆ m_managed_dynamic_svalues

auto_delete_vec<svalue> ana::region_model_manager::m_managed_dynamic_svalues
private

◆ m_max_complexity

complexity ana::region_model_manager::m_max_complexity
private

◆ m_next_symbol_id

unsigned ana::region_model_manager::m_next_symbol_id
private

Referenced by alloc_symbol_id(), and get_num_symbols().

◆ m_offset_regions

consolidation_map<offset_region> ana::region_model_manager::m_offset_regions
private

◆ m_pointer_values_map

pointer_values_map_t ana::region_model_manager::m_pointer_values_map
private

◆ m_poisoned_values_map

poisoned_values_map_t ana::region_model_manager::m_poisoned_values_map
private

◆ m_range_mgr

bounded_ranges_manager* ana::region_model_manager::m_range_mgr
private

Referenced by get_range_manager().

◆ m_repeated_values_map

repeated_values_map_t ana::region_model_manager::m_repeated_values_map
private

◆ m_root_region

root_region ana::region_model_manager::m_root_region
private

Referenced by get_root_region().

◆ m_setjmp_values_map

setjmp_values_map_t ana::region_model_manager::m_setjmp_values_map
private

◆ m_sized_regions

consolidation_map<sized_region> ana::region_model_manager::m_sized_regions
private

◆ m_stack_region

stack_region ana::region_model_manager::m_stack_region
private

Referenced by get_stack_region().

◆ m_store_mgr

store_manager ana::region_model_manager::m_store_mgr
private

Referenced by get_store_manager().

◆ m_string_map

string_map_t ana::region_model_manager::m_string_map
private

◆ m_sub_values_map

sub_values_map_t ana::region_model_manager::m_sub_values_map
private

◆ m_symbolic_regions

consolidation_map<symbolic_region> ana::region_model_manager::m_symbolic_regions
private

◆ m_thread_local_region

thread_local_region ana::region_model_manager::m_thread_local_region
private

◆ m_unaryop_values_map

unaryop_values_map_t ana::region_model_manager::m_unaryop_values_map
private

◆ m_unknown_NULL

const unknown_svalue* ana::region_model_manager::m_unknown_NULL
private

◆ m_unknowns_map

unknowns_map_t ana::region_model_manager::m_unknowns_map
private

◆ m_unmergeable_values_map

unmergeable_values_map_t ana::region_model_manager::m_unmergeable_values_map
private

◆ m_var_arg_regions

consolidation_map<var_arg_region> ana::region_model_manager::m_var_arg_regions
private

◆ m_widening_values_map

widening_values_map_t ana::region_model_manager::m_widening_values_map
private

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