GCC Middle and Back End API Reference
decision Class Reference
Inheritance diagram for decision:
Collaboration diagram for decision:

Public Member Functions

 decision (const rtx_test &)
void set_parent (list_head< decision > *s)
bool if_statement_p (uint64_t *=0) const
range release ()
void push_back (range)
range remove (range)
void replace (range, range)
transitionsingleton () const

Data Fields

rtx_test test

Detailed Description

Represents a test and the action that should be taken on the result.
If a transition exists for the test outcome, the machine switches
to the transition's target state.  If no suitable transition exists,
the machine either falls through to the next decision or, if there are no
more decisions to try, fails the match.   

Constructor & Destructor Documentation

◆ decision()

decision::decision ( const rtx_test & test_in)

Member Function Documentation

◆ if_statement_p()

bool decision::if_statement_p ( uint64_t * label = 0) const
Return true if the decision has a single transition with a single label.
If so, return the label in *LABEL if nonnull.   

References list_head< transition >::first, transition::labels, and list_head< transition >::singleton().

Referenced by print_decision().

◆ push_back()

void list_head< transition >::push_back ( range r)
Add R to the end of the list.   

◆ release()

list_head< transition >::range list_head< transition >::release ( )
Empty the list and return the previous contents as a range that can
be inserted into other lists.   

◆ remove()

list_head< transition >::range list_head< transition >::remove ( range r)
Remove R from the list.  R remains valid and can be inserted into
other lists.   

◆ replace()

void list_head< transition >::replace ( range oldr,
range newr )
Replace OLDR with NEWR.  OLDR remains valid and can be inserted into
other lists.   

◆ set_parent()

void decision::set_parent ( list_head< decision > * s_in)
Set the state to which this decision belongs.   

References ggc_alloc(), and s.

◆ singleton()

transition * list_head< transition >::singleton ( ) const
If the list contains a single item, return that item, otherwise return

Field Documentation

◆ first

transition * list_head< transition >::first

◆ last

transition * list_head< transition >::last

◆ next

decision * decision::next

◆ prev

decision* decision::prev

◆ s

state* decision::s

Referenced by set_parent().

◆ test

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