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

#include <state-purge.h>

Inheritance diagram for ana::state_purge_per_ssa_name:
Collaboration diagram for ana::state_purge_per_ssa_name:

Public Member Functions

 state_purge_per_ssa_name (const state_purge_map &map, tree name, const function &fun)
bool needed_at_point_p (const function_point &point) const
const functionget_function () const
tree get_fndecl () const

Protected Types

typedef hash_set< function_pointpoint_set_t

Private Member Functions

void add_to_worklist (const function_point &point, auto_vec< function_point > *worklist, logger *logger)
void process_point (const function_point &point, auto_vec< function_point > *worklist, const state_purge_map &map)

Static Private Member Functions

static function_point before_use_stmt (const state_purge_map &map, const gimple *use_stmt)

Private Attributes

point_set_t m_points_needing_name
tree m_name
const functionm_fun

Detailed Description

The part of a state_purge_map relating to a specific SSA name.

The result of analyzing a given SSA name, recording which
function_points need to retain state information about it to handle
their successor states, so that we can simplify program_state objects,
in the hope of reducing state-blowup.   

Member Typedef Documentation

◆ point_set_t

Constructor & Destructor Documentation

◆ state_purge_per_ssa_name()

ana::state_purge_per_ssa_name::state_purge_per_ssa_name ( const state_purge_map & map,
tree name,
const function & fun )

Member Function Documentation

◆ add_to_worklist()

void ana::state_purge_per_ssa_name::add_to_worklist ( const function_point & point,
auto_vec< function_point > * worklist,
logger * logger )

◆ before_use_stmt()

static function_point ana::state_purge_per_ssa_name::before_use_stmt ( const state_purge_map & map,
const gimple * use_stmt )

◆ get_fndecl()

tree ana::state_purge_per_tree::get_fndecl ( ) const

◆ get_function()

const function & ana::state_purge_per_tree::get_function ( ) const

◆ needed_at_point_p()

bool ana::state_purge_per_ssa_name::needed_at_point_p ( const function_point & point) const

◆ process_point()

void ana::state_purge_per_ssa_name::process_point ( const function_point & point,
auto_vec< function_point > * worklist,
const state_purge_map & map )

Field Documentation

◆ m_fun

const function& ana::state_purge_per_tree::m_fun

◆ m_name

tree ana::state_purge_per_ssa_name::m_name

◆ m_points_needing_name

point_set_t ana::state_purge_per_ssa_name::m_points_needing_name

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