|
GCC Middle and Back End API Reference
|
#include <supergraph.h>


Public Types | |
| typedef supergraph_traits::node_t | node_t |
| typedef supergraph_traits::edge_t | edge_t |
| typedef supergraph_traits::dump_args_t | dump_args_t |
Public Member Functions | |
| superedge (supernode *src, supernode *dest, std::unique_ptr< operation > op, ::edge cfg_edge) | |
| virtual | ~superedge () |
| void | dump (pretty_printer *pp) const |
| void | dump () const |
| void | dump_dot (graphviz_out *gv, const dump_args_t &args) const final override |
| const operation * | get_op () const |
| void | set_op (std::unique_ptr< operation > op) |
| void | dump_label_to_pp (pretty_printer *pp, bool user_facing) const |
| std::unique_ptr< json::object > | to_json () const |
| const supernode * | get_dest_snode () const |
| ::edge | get_any_cfg_edge () const |
| bool | preserve_p () const |
| label_text | get_description (bool user_facing) const |
| bool | supports_bulk_merge_p () const |
| virtual void | dump_dot (graphviz_out *gv, const dump_args_t &args) const=0 |
| void | set_dest (node_t *new_dest) |
Data Fields | |
| node_t * | m_src |
| node_t * | m_dest |
Private Attributes | |
| std::unique_ptr< operation > | m_op |
| ::edge | m_cfg_edge |
An edge within the supergraph, with an optional operation. Edges can be CFG edges or edges between statements, or persist in order to give more opportunities for state-merging when building the exploded graph.
|
inherited |
|
inherited |
|
inherited |
|
inlinevirtual |
| void ana::superedge::dump | ( | ) | const |
| void ana::superedge::dump | ( | pretty_printer * | pp | ) | const |
|
finaloverride |
|
pure virtualinherited |
| void ana::superedge::dump_label_to_pp | ( | pretty_printer * | pp, |
| bool | user_facing ) const |
|
inline |
References m_cfg_edge.
Referenced by get_in_edge_back_edge(), and starts_infinite_loop_p().
| label_text ana::superedge::get_description | ( | bool | user_facing | ) | const |
|
inline |
References dedge< supergraph_traits >::m_dest.
|
inline |
References m_op.
Referenced by infinite_recursion_diagnostic::fedge_uses_conjured_svalue_p().
| bool ana::superedge::preserve_p | ( | ) | const |
|
inlineinherited |
| bool ana::superedge::supports_bulk_merge_p | ( | ) | const |
| std::unique_ptr< json::object > ana::superedge::to_json | ( | ) | const |
|
private |
Referenced by get_any_cfg_edge(), and superedge().
|
inherited |
Referenced by ana::superedge::get_dest_snode(), and ana::superedge::superedge().
|
private |
Referenced by get_op(), set_op(), and superedge().
|
inherited |
Referenced by ana::superedge::superedge().