|
GCC Middle and Back End API Reference
|
#include <state-purge.h>


Public Types | |
| typedef ordered_hash_map< tree, state_purge_per_ssa_name * > | ssa_map_t |
| typedef ssa_map_t::iterator | ssa_iterator |
| typedef ordered_hash_map< tree, state_purge_per_decl * > | decl_map_t |
| typedef decl_map_t::iterator | decl_iterator |
Public Member Functions | |
| state_purge_map (const supergraph &sg, region_model_manager *mgr, logger *logger) | |
| ~state_purge_map () | |
| const state_purge_per_ssa_name & | get_data_for_ssa_name (tree name) const |
| const state_purge_per_decl * | get_any_data_for_decl (tree decl) const |
| state_purge_per_decl & | get_or_create_data_for_decl (const function &fun, tree decl) |
| const supergraph & | get_sg () const |
| ssa_iterator | begin_ssas () const |
| ssa_iterator | end_ssas () const |
| decl_iterator | begin_decls () const |
| decl_iterator | end_decls () const |
| logger * | get_logger () const |
| void | set_logger (logger *logger) |
| void | log (const char *fmt,...) const ATTRIBUTE_GCC_DIAG(2 |
| void void | start_log_line () const |
| void | end_log_line () const |
| void | enter_scope (const char *scope_name) |
| void | exit_scope (const char *scope_name) |
| pretty_printer * | get_logger_pp () const |
| FILE * | get_logger_file () const |
Private Member Functions | |
| DISABLE_COPY_AND_ASSIGN (state_purge_map) | |
Private Attributes | |
| const supergraph & | m_sg |
| ssa_map_t | m_ssa_map |
| decl_map_t | m_decl_map |
| logger * | m_logger |
The result of analyzing which decls and SSA names can be purged from state at different points in the program, so that we can simplify program_state objects, in the hope of reducing state-blowup.
| typedef decl_map_t::iterator ana::state_purge_map::decl_iterator |
| typedef ssa_map_t::iterator ana::state_purge_map::ssa_iterator |
| ana::state_purge_map::state_purge_map | ( | const supergraph & | sg, |
| region_model_manager * | mgr, | ||
| logger * | logger ) |
Referenced by DISABLE_COPY_AND_ASSIGN().
| ana::state_purge_map::~state_purge_map | ( | ) |
|
inline |
References m_decl_map.
|
inline |
References m_ssa_map.
|
private |
References state_purge_map().
|
inline |
References m_decl_map.
|
inlineinherited |
A shortcut for ending a log line from a log_user, handling the common case where the underlying logger is nullptr via a no-op.
References m_logger.
Referenced by set_logger().
|
inline |
References m_ssa_map.
|
inlineinherited |
A shortcut for recording entry into a scope from a log_user, handling the common case where the underlying logger is nullptr via a no-op.
References m_logger.
Referenced by set_logger().
|
inlineinherited |
A shortcut for recording exit from a scope from a log_user, handling the common case where the underlying logger is nullptr via a no-op.
References m_logger.
Referenced by set_logger().
|
inline |
References gcc_assert, m_decl_map, and TREE_CODE.
|
inline |
References gcc_assert, m_ssa_map, SSA_NAME_VAR, TREE_CODE, and VAR_DECL_IS_VIRTUAL_OPERAND.
|
inlineinherited |
References m_logger.
|
inlineinherited |
References gcc_assert, get_logger_pp(), and m_logger.
Referenced by get_logger_pp().
| state_purge_per_decl & ana::state_purge_map::get_or_create_data_for_decl | ( | const function & | fun, |
| tree | decl ) |
|
inline |
References m_sg.
|
inlineinherited |
|
inherited |
References ATTRIBUTE_GCC_DIAG, end_log_line(), enter_scope(), exit_scope(), and start_log_line().
|
inlineinherited |
A shortcut for starting a log line from a log_user, handling the common case where the underlying logger is nullptr via a no-op.
References m_logger.
Referenced by set_logger().
|
private |
Referenced by begin_decls(), end_decls(), and get_any_data_for_decl().
|
privateinherited |
Referenced by end_log_line(), enter_scope(), exit_scope(), get_logger(), get_logger_file(), get_logger_pp(), log(), and start_log_line().
|
private |
Referenced by get_sg().
|
private |
Referenced by begin_ssas(), end_ssas(), and get_data_for_ssa_name().