GCC Middle and Back End API Reference
|
#include <region-model.h>
Public Member Functions | |
bool | warn (std::unique_ptr< pending_diagnostic > d, const stmt_finder *custom_finder) override |
virtual void | add_annotations ()=0 |
void | add_note (std::unique_ptr< pending_note > pn) override |
void | add_event (std::unique_ptr< checker_event > event) override |
void | on_svalue_leak (const svalue *sval) override |
void | on_liveness_change (const svalue_set &live_svalues, const region_model *model) override |
logger * | get_logger () override |
void | on_condition (const svalue *lhs, enum tree_code op, const svalue *rhs) override |
void | on_bounded_ranges (const svalue &sval, const bounded_ranges &ranges) override |
void | on_pop_frame (const frame_region *frame_reg) override |
void | on_unknown_change (const svalue *sval, bool is_mutable) override |
void | on_phi (const gphi *phi, tree rhs) override |
void | on_unexpected_tree_code (tree t, const dump_location_t &loc) override |
void | on_escaped_function (tree fndecl) override |
uncertainty_t * | get_uncertainty () override |
void | purge_state_involving (const svalue *sval) override |
void | bifurcate (std::unique_ptr< custom_edge_info > info) override |
void | terminate_path () override |
const extrinsic_state * | get_ext_state () const override |
bool | get_state_map_by_name (const char *name, sm_state_map **out_smap, const state_machine **out_sm, unsigned *out_sm_idx, std::unique_ptr< sm_context > *out_sm_context) override |
const gimple * | get_stmt () const override |
const exploded_graph * | get_eg () const override |
void | maybe_did_work () override |
bool | checking_for_infinite_loop_p () const override |
void | on_unusable_in_infinite_loop () override |
bool | get_fd_map (sm_state_map **out_smap, const state_machine **out_sm, unsigned *out_sm_idx, std::unique_ptr< sm_context > *out_sm_context) |
bool | get_malloc_map (sm_state_map **out_smap, const state_machine **out_sm, unsigned *out_sm_idx) |
bool | get_taint_map (sm_state_map **out_smap, const state_machine **out_sm, unsigned *out_sm_idx) |
bool | possibly_tainted_p (const svalue *sval) |
Protected Member Functions | |
annotating_context (region_model_context *inner) | |
Protected Attributes | |
region_model_context * | m_inner |
Subclass of region_model_context_decorator with a hook for adding notes/events when saving diagnostics.
|
inlineprotected |
|
pure virtual |
Referenced by warn().
|
overridevirtualinherited |
Implements ana::region_model_context.
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context::add_note(), and ana::region_model_context_decorator::m_inner.
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context::bifurcate(), and ana::region_model_context_decorator::m_inner.
|
inlineoverridevirtualinherited |
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context::get_eg(), and ana::region_model_context_decorator::m_inner.
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context::get_ext_state(), and ana::region_model_context_decorator::m_inner.
|
inlineinherited |
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context::get_logger(), and ana::region_model_context_decorator::m_inner.
|
inlineinherited |
References ana::region_model_context::get_state_map_by_name(), and NULL.
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context::get_state_map_by_name(), and ana::region_model_context_decorator::m_inner.
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context::get_stmt(), and ana::region_model_context_decorator::m_inner.
|
inlineinherited |
References ana::region_model_context::get_state_map_by_name(), and NULL.
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context::get_uncertainty(), and ana::region_model_context_decorator::m_inner.
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::maybe_did_work().
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::on_bounded_ranges().
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::on_condition().
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::on_escaped_function().
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::on_liveness_change().
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::on_phi().
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::on_pop_frame().
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::on_svalue_leak().
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::on_unexpected_tree_code().
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::on_unknown_change().
|
inlineoverridevirtualinherited |
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::purge_state_involving().
|
inlineoverridevirtualinherited |
Implements ana::region_model_context.
References ana::region_model_context_decorator::m_inner, and ana::region_model_context::terminate_path().
|
inlineoverridevirtual |
Implements ana::region_model_context.
References add_annotations(), ana::region_model_context_decorator::m_inner, and ana::region_model_context::warn().
|
protectedinherited |
Referenced by ana::region_model_context_decorator::add_note(), ana::region_model_context_decorator::bifurcate(), ana::region_model_context_decorator::checking_for_infinite_loop_p(), ana::region_model_context_decorator::get_eg(), ana::region_model_context_decorator::get_ext_state(), ana::region_model_context_decorator::get_logger(), ana::region_model_context_decorator::get_state_map_by_name(), ana::region_model_context_decorator::get_stmt(), ana::region_model_context_decorator::get_uncertainty(), ana::region_model_context_decorator::maybe_did_work(), ana::region_model_context_decorator::on_bounded_ranges(), ana::region_model_context_decorator::on_condition(), ana::region_model_context_decorator::on_escaped_function(), ana::region_model_context_decorator::on_liveness_change(), ana::region_model_context_decorator::on_phi(), ana::region_model_context_decorator::on_pop_frame(), ana::region_model_context_decorator::on_svalue_leak(), ana::region_model_context_decorator::on_unexpected_tree_code(), ana::region_model_context_decorator::on_unknown_change(), ana::region_model_context_decorator::on_unusable_in_infinite_loop(), ana::region_model_context_decorator::purge_state_involving(), ana::region_model_context_decorator::terminate_path(), warn(), and ana::region_model_context_decorator::warn().