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

#include <call-summary.h>

Collaboration diagram for ana::call_summary_replay:

Public Member Functions

 call_summary_replay (const call_details &cd, const function &called_fn, call_summary *m_summary, const extrinsic_state &ext_state)
 
const call_detailsget_call_details () const
 
const gcallget_call_stmt () const
 
region_model_managerget_manager () const
 
store_managerget_store_manager () const
 
region_model_contextget_ctxt () const
 
region_modelget_caller_model () const
 
const svalueconvert_svalue_from_summary (const svalue *)
 
const regionconvert_region_from_summary (const region *)
 
const binding_keyconvert_key_from_summary (const binding_key *)
 
void add_svalue_mapping (const svalue *summary_sval, const svalue *caller_sval)
 
void add_region_mapping (const region *summary_sval, const region *caller_sval)
 
void dump_to_pp (pretty_printer *pp, bool simple) const
 
void dump (FILE *fp, bool simple) const
 
void dump (bool simple) const
 

Private Types

typedef hash_map< const svalue *, const svalue * > svalue_map_t
 
typedef hash_map< const region *, const region * > region_map_t
 

Private Member Functions

 DISABLE_COPY_AND_ASSIGN (call_summary_replay)
 
const svalueconvert_svalue_from_summary_1 (const svalue *)
 
const regionconvert_region_from_summary_1 (const region *)
 

Private Attributes

const call_detailsm_cd
 
call_summarym_summary
 
const extrinsic_statem_ext_state
 
svalue_map_t m_map_svalue_from_summary_to_caller
 
region_map_t m_map_region_from_summary_to_caller
 

Detailed Description

A class for handling replaying a specific call summary at
a specific call site.

Supports remapping svalues and regions, e.g. remapping
  INIT_VAL(param of callee)
to:
  whatever that argument is at the call site.   

Member Typedef Documentation

◆ region_map_t

◆ svalue_map_t

Constructor & Destructor Documentation

◆ call_summary_replay()

ana::call_summary_replay::call_summary_replay ( const call_details & cd,
const function & called_fn,
call_summary * m_summary,
const extrinsic_state & ext_state )

Member Function Documentation

◆ add_region_mapping()

void ana::call_summary_replay::add_region_mapping ( const region * summary_sval,
const region * caller_sval )

◆ add_svalue_mapping()

void ana::call_summary_replay::add_svalue_mapping ( const svalue * summary_sval,
const svalue * caller_sval )

◆ convert_key_from_summary()

const binding_key * ana::call_summary_replay::convert_key_from_summary ( const binding_key * )

◆ convert_region_from_summary()

const region * ana::call_summary_replay::convert_region_from_summary ( const region * )

◆ convert_region_from_summary_1()

const region * ana::call_summary_replay::convert_region_from_summary_1 ( const region * )
private

◆ convert_svalue_from_summary()

const svalue * ana::call_summary_replay::convert_svalue_from_summary ( const svalue * )

◆ convert_svalue_from_summary_1()

const svalue * ana::call_summary_replay::convert_svalue_from_summary_1 ( const svalue * )
private

◆ DISABLE_COPY_AND_ASSIGN()

ana::call_summary_replay::DISABLE_COPY_AND_ASSIGN ( call_summary_replay )
private

◆ dump() [1/2]

void ana::call_summary_replay::dump ( bool simple) const

◆ dump() [2/2]

void ana::call_summary_replay::dump ( FILE * fp,
bool simple ) const

◆ dump_to_pp()

void ana::call_summary_replay::dump_to_pp ( pretty_printer * pp,
bool simple ) const

◆ get_call_details()

const call_details & ana::call_summary_replay::get_call_details ( ) const
inline

References m_cd.

◆ get_call_stmt()

const gcall * ana::call_summary_replay::get_call_stmt ( ) const
inline

◆ get_caller_model()

region_model * ana::call_summary_replay::get_caller_model ( ) const
inline

◆ get_ctxt()

region_model_context * ana::call_summary_replay::get_ctxt ( ) const
inline

◆ get_manager()

region_model_manager * ana::call_summary_replay::get_manager ( ) const
inline

◆ get_store_manager()

store_manager * ana::call_summary_replay::get_store_manager ( ) const
inline

Field Documentation

◆ m_cd

const call_details& ana::call_summary_replay::m_cd
private

◆ m_ext_state

const extrinsic_state& ana::call_summary_replay::m_ext_state
private

◆ m_map_region_from_summary_to_caller

region_map_t ana::call_summary_replay::m_map_region_from_summary_to_caller
private

◆ m_map_svalue_from_summary_to_caller

svalue_map_t ana::call_summary_replay::m_map_svalue_from_summary_to_caller
private

◆ m_summary

call_summary* ana::call_summary_replay::m_summary
private

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