GCC Middle and Back End API Reference
|
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) |
transition * | singleton () const |
Data Fields | |
state * | s |
decision * | prev |
decision * | next |
rtx_test | test |
transition * | first |
transition * | last |
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.
decision::decision | ( | const rtx_test & | test_in | ) |
|
inline |
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 find_subroutines(), and print_decision().
|
inherited |
Add R to the end of the list.
|
inherited |
Empty the list and return the previous contents as a range that can be inserted into other lists.
|
inherited |
Remove R from the list. R remains valid and can be inserted into other lists.
|
inherited |
Replace OLDR with NEWR. OLDR remains valid and can be inserted into other lists.
Set the state to which this decision belongs.
References s.
|
inherited |
If the list contains a single item, return that item, otherwise return null.
Referenced by if_statement_p().
|
inherited |
Referenced by if_statement_p().
|
inherited |
decision * decision::next |
decision* decision::prev |
state* decision::s |
Referenced by cse_tests(), and set_parent().
rtx_test decision::test |