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

#include <exploded-graph.h>

Inheritance diagram for ana::dynamic_call_info_t:
Collaboration diagram for ana::dynamic_call_info_t:

Public Member Functions

 dynamic_call_info_t (const gcall *dynamic_call, const bool is_returning_call=false)
void print (pretty_printer *pp) const final override
bool update_model (region_model *model, const exploded_edge *eedge, region_model_context *ctxt) const final override
void add_events_to_path (checker_path *emission_path, const exploded_edge &eedge) const final override
virtual bool update_state (program_state *state, const exploded_edge *eedge, region_model_context *ctxt) const

Private Attributes

const gcallm_dynamic_call
const bool m_is_returning_call

Detailed Description

Extra data for an exploded_edge that represents dynamic call info ( calls
that doesn't have an underlying superedge representing the call ).   

Constructor & Destructor Documentation

◆ dynamic_call_info_t()

ana::dynamic_call_info_t::dynamic_call_info_t ( const gcall * dynamic_call,
const bool is_returning_call = false )

Member Function Documentation

◆ add_events_to_path()

void ana::dynamic_call_info_t::add_events_to_path ( checker_path * emission_path,
const exploded_edge & eedge ) const

Implements ana::custom_edge_info.

◆ print()

void ana::dynamic_call_info_t::print ( pretty_printer * pp) const

◆ update_model()

bool ana::dynamic_call_info_t::update_model ( region_model * model,
const exploded_edge * eedge,
region_model_context * ctxt ) const

Implements ana::custom_edge_info.

◆ update_state()

virtual bool ana::custom_edge_info::update_state ( program_state * state,
const exploded_edge * eedge,
region_model_context * ctxt ) const

Field Documentation

◆ m_dynamic_call

const gcall* ana::dynamic_call_info_t::m_dynamic_call

◆ m_is_returning_call

const bool ana::dynamic_call_info_t::m_is_returning_call

Referenced by print().

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