GCC Middle and Back End API Reference
condition_info Struct Reference
Collaboration diagram for condition_info:

Public Types

typedef auto_vec< std::pair< gphi *, tree > > mapping_vec
 

Public Member Functions

 condition_info ()
 
int popcount () const
 
 condition_info (gcond *cond, bool has_side_effect)
 
void record_phi_mapping (edge e, mapping_vec *vec)
 

Data Fields

gcov_type_unsigned truev
 
gcov_type_unsigned falsev
 
unsigned n_terms
 
gcondm_cond
 
basic_block m_bb
 
basic_block m_forwarder_bb
 
auto_vec< range_entrym_ranges
 
edge m_true_edge
 
edge m_false_edge
 
mapping_vec m_true_edge_phi_mapping
 
mapping_vec m_false_edge_phi_mapping
 
bool m_has_side_effect
 

Detailed Description

Describes a single conditional expression and the (recorded) conditions
shown to independently affect the outcome.   

Member Typedef Documentation

◆ mapping_vec

Constructor & Destructor Documentation

◆ condition_info() [1/2]

condition_info::condition_info ( )

◆ condition_info() [2/2]

condition_info::condition_info ( gcond * cond,
bool has_side_effect )
inline

References m_ranges.

Member Function Documentation

◆ popcount()

int condition_info::popcount ( ) const

◆ record_phi_mapping()

void condition_info::record_phi_mapping ( edge e,
mapping_vec * vec )
Recond PHI mapping for an original edge E and save these into vector VEC.   

References gsi_end_p(), gsi_next(), gsi_start_phis(), and PHI_ARG_DEF_FROM_EDGE.

Referenced by find_conditions().

Field Documentation

◆ falsev

◆ m_bb

basic_block condition_info::m_bb

◆ m_cond

gcond* condition_info::m_cond

◆ m_false_edge

edge condition_info::m_false_edge

◆ m_false_edge_phi_mapping

mapping_vec condition_info::m_false_edge_phi_mapping

Referenced by find_conditions().

◆ m_forwarder_bb

basic_block condition_info::m_forwarder_bb

◆ m_has_side_effect

bool condition_info::m_has_side_effect

◆ m_ranges

◆ m_true_edge

edge condition_info::m_true_edge

◆ m_true_edge_phi_mapping

mapping_vec condition_info::m_true_edge_phi_mapping

◆ n_terms

◆ truev


The documentation for this struct was generated from the following files: