GCC Middle and Back End API Reference
|
Public Types | |
enum | kind_enum { CODE , MODE , REGNO_FIELD , SUBREG_FIELD , INT_FIELD , WIDE_INT_FIELD , VECLEN , PEEP2_COUNT , VECLEN_GE , SAVED_CONST_INT , PREDICATE , DUPLICATE , PATTERN , HAVE_NUM_CLOBBERS , C_TEST , SET_OP , ACCEPT } |
Public Member Functions | |
rtx_test () | |
bool | terminal_p () const |
bool | single_outcome_p () const |
Static Public Member Functions | |
static rtx_test | code (position *) |
static rtx_test | mode (position *) |
static rtx_test | regno_field (position *) |
static rtx_test | subreg_field (position *) |
static rtx_test | int_field (position *, int) |
static rtx_test | wide_int_field (position *, int) |
static rtx_test | veclen (position *) |
static rtx_test | peep2_count (int) |
static rtx_test | veclen_ge (position *, int) |
static rtx_test | predicate (position *, const pred_data *, machine_mode) |
static rtx_test | duplicate (position *, int) |
static rtx_test | pattern (position *, pattern_use *) |
static rtx_test | have_num_clobbers () |
static rtx_test | c_test (const char *) |
static rtx_test | set_op (position *, int) |
static rtx_test | accept (const acceptance_type &) |
Data Fields | ||
position * | pos | |
int | pos_operand | |
kind_enum | kind | |
union { | ||
int opno | ||
int min_len | ||
struct { | ||
bool is_param | ||
int value | ||
} integer | ||
struct { | ||
const struct pred_data * data | ||
bool mode_is_param | ||
unsigned int mode | ||
} predicate | ||
pattern_use * pattern | ||
const char * string | ||
acceptance_type acceptance | ||
} | u | |
Private Member Functions | |
rtx_test (position *, kind_enum) | |
Represents a test performed by a decision.
enum rtx_test::kind_enum |
rtx_test::rtx_test | ( | ) |
Referenced by code(), have_num_clobbers(), and veclen().
|
static |
References ACCEPT, acceptance, and u.
Referenced by add_pattern_acceptance(), create_subroutine(), and match_pattern_1().
|
static |
References C_TEST, string, and u.
Referenced by match_pattern_1().
References CODE, pos, and rtx_test().
Referenced by match_pattern_2().
References DUPLICATE, opno, pos, and u.
Referenced by match_pattern_2().
|
static |
References HAVE_NUM_CLOBBERS, and rtx_test().
Referenced by match_pattern_1().
References INT_FIELD, opno, pos, and u.
Referenced by match_pattern_2().
|
static |
|
static |
References min_len, PEEP2_COUNT, and u.
Referenced by match_pattern_1().
References pos, and REGNO_FIELD.
Referenced by match_pattern_2().
References opno, pos, SET_OP, and u.
Referenced by match_pattern_2().
bool rtx_test::single_outcome_p | ( | ) | const |
Return true if the test is a boolean that is always true.
References kind, SET_OP, and terminal_p().
Referenced by find_subroutines().
References pos, and SUBREG_FIELD.
Referenced by match_pattern_2().
bool rtx_test::terminal_p | ( | ) | const |
Return true if the test represents an unconditionally successful match.
References ACCEPT, acceptance, kind, PEEPHOLE2, acceptance_type::type, and u.
Referenced by single_outcome_p().
References pos, rtx_test(), and VECLEN.
Referenced by match_pattern_2().
References min_len, pos, u, and VECLEN_GE.
Referenced by match_pattern_2().
References opno, pos, u, and WIDE_INT_FIELD.
Referenced by match_pattern_2().
acceptance_type rtx_test::acceptance |
Referenced by accept(), print_decision(), terminal_p(), and terminal_pattern_p().
const struct pred_data* rtx_test::data |
Referenced by print_test().
struct { ... } rtx_test::integer |
Referenced by populate_pattern_routine(), and print_test().
bool rtx_test::is_param |
Referenced by populate_pattern_routine(), print_decision(), and print_test().
kind_enum rtx_test::kind |
int rtx_test::min_len |
Referenced by peep2_count(), print_test(), and veclen_ge().
rtx_test rtx_test::mode |
Referenced by match_pattern_2(), populate_pattern_routine(), and print_test().
bool rtx_test::mode_is_param |
Referenced by populate_pattern_routine(), and print_test().
int rtx_test::opno |
Referenced by duplicate(), int_field(), print_decision(), print_nonbool_test(), print_test(), safe_to_hoist_p(), set_op(), and wide_int_field().
rtx_test rtx_test::pattern |
Referenced by init_pattern_use(), and print_nonbool_test().
position* rtx_test::pos |
Referenced by code(), cse_tests(), duplicate(), find_subroutines(), test_pattern_hasher::hash(), init_pattern_use(), int_field(), populate_pattern_routine(), print_decision(), print_nonbool_test(), print_test_rtx(), regno_field(), safe_to_hoist_p(), set_op(), subreg_field(), test_position_available_p(), veclen(), veclen_ge(), and wide_int_field().
int rtx_test::pos_operand |
rtx_test rtx_test::predicate |
Referenced by match_pattern_2(), populate_pattern_routine(), and print_test().
const char* rtx_test::string |
Referenced by c_test(), and print_test().
union { ... } rtx_test::u |
int rtx_test::value |
Referenced by populate_pattern_routine(), and print_test().