GCC Middle and Back End API Reference
|
#include <supergraph.h>
Public Types | |
typedef supergraph_traits::node_t | node_t |
typedef supergraph_traits::dump_args_t | dump_args_t |
Static Public Member Functions | |
static std::unique_ptr< eh_dispatch_cfg_superedge > | make (supernode *src, supernode *dest, ::edge e, const geh_dispatch *eh_dispatch_stmt) |
Data Fields | |
enum edge_kind | m_kind |
node_t *const | m_src |
node_t *const | m_dest |
Protected Member Functions | |
eh_dispatch_cfg_superedge (supernode *src, supernode *dst, ::edge e, const geh_dispatch *eh_dispatch_stmt, eh_region eh_reg) |
Private Attributes | |
const geh_dispatch * | m_eh_dispatch_stmt |
eh_region | m_eh_region |
const ::edge | m_cfg_edge |
A subclass for edges from eh_dispatch statements, retaining enough information to identify the various types being caught, vs the "unhandled type" case, and for adding labels when rendering via graphviz. This is abstract; there are concrete subclasses based on the type of the eh_region.
|
inherited |
|
inherited |
|
protected |
|
pure virtual |
Implemented in ana::eh_dispatch_allowed_cfg_superedge, and ana::eh_dispatch_try_cfg_superedge.
|
inlineinherited |
References get_flags().
Referenced by infinite_loop_diagnostic::add_final_event(), and get_in_edge_back_edge().
|
inherited |
|
inherited |
|
finaloverrideinherited |
|
pure virtualinherited |
|
overridevirtualinherited |
Implements ana::superedge.
Reimplemented in ana::eh_dispatch_allowed_cfg_superedge, ana::eh_dispatch_try_cfg_superedge, and ana::switch_cfg_superedge.
|
inlinevirtualinherited |
Reimplemented in ana::call_superedge.
References NULL.
|
inlinevirtualinherited |
Reimplemented in ana::call_superedge.
References NULL.
|
inlinevirtualinherited |
Reimplemented in ana::callgraph_superedge.
References NULL.
|
inlinevirtualinherited |
Reimplemented in ana::callgraph_superedge.
References NULL.
|
inlinefinaloverridevirtualinherited |
Reimplemented from ana::superedge.
References cfg_superedge(), and final().
|
inlinefinaloverridevirtualinherited |
Reimplemented from ana::superedge.
References cfg_superedge(), and final().
Referenced by infinite_loop_diagnostic::add_final_event().
|
inlinevirtualinherited |
Reimplemented in ana::eh_dispatch_allowed_cfg_superedge.
|
inlinefinaloverridevirtual |
Reimplemented from ana::superedge.
References eh_dispatch_cfg_superedge(), and final().
|
inlinevirtualinherited |
Reimplemented in ana::eh_dispatch_try_cfg_superedge.
|
inlinevirtualinherited |
Reimplemented in ana::return_superedge.
References NULL.
|
inlinevirtualinherited |
Reimplemented in ana::return_superedge.
References NULL.
|
inlinevirtualinherited |
Reimplemented in ana::switch_cfg_superedge.
References NULL.
Referenced by infinite_loop_diagnostic::add_final_event().
|
inlineinherited |
References get_flags().
Referenced by infinite_loop_diagnostic::add_final_event().
|
inherited |
|
inherited |
Referenced by starts_infinite_loop_p().
|
inlineinherited |
References m_cfg_edge.
|
inherited |
|
inline |
References m_eh_dispatch_stmt.
|
inline |
References m_eh_region.
const eh_status & ana::eh_dispatch_cfg_superedge::get_eh_status | ( | ) | const |
|
inlineinherited |
References m_cfg_edge.
Referenced by back_edge_p(), false_value_p(), and true_value_p().
|
inlineinherited |
References m_cfg_edge.
Referenced by infinite_loop_diagnostic::add_final_event().
|
inherited |
|
static |
|
inherited |
|
inlineinherited |
References get_flags().
Referenced by infinite_loop_diagnostic::add_final_event().
|
privateinherited |
Referenced by cfg_superedge(), get_cfg_edge(), get_flags(), and get_goto_locus().
|
inherited |
|
private |
Referenced by get_eh_dispatch_stmt().
|
private |
Referenced by get_eh_region().
|
inherited |
Referenced by get_kind(), and superedge().
|
inherited |
Referenced by ana::switch_cfg_superedge::get_switch_stmt().