GCC Middle and Back End API Reference
|
#include <gimple-match.h>
Data Fields | |
gimple_match_cond | cond |
code_helper | code |
tree | type |
bool | reverse |
unsigned int | num_ops |
tree | ops [MAX_NUM_OPS] |
Static Public Attributes | |
static const unsigned int | MAX_NUM_OPS = 7 |
Represents an operation to be simplified, or the result of the simplification.
|
inline |
|
inline |
Constructor that takes the condition, code, type and number of operands, but leaves the caller to fill in the operands.
|
inline |
Constructors for various numbers of operands.
References ops.
|
inline |
References ops.
|
inline |
References ops.
|
inline |
References ops.
|
inline |
References ops.
|
inline |
References ops.
|
inline |
References ops.
|
inline |
Return the value of operand I, or null if there aren't that many operands.
References i, NULL_TREE, num_ops, and ops.
Referenced by build_call_internal(), maybe_push_res_to_seq(), maybe_resimplify_conditional_op(), and replace_stmt_with_simplification().
bool gimple_match_op::operands_occurs_in_abnormal_phi | ( | ) | const |
Returns true if any of the operands of THIS occurs in abnormal phis.
References i, num_ops, ops, SSA_NAME_OCCURS_IN_ABNORMAL_PHI, and TREE_CODE.
Referenced by factor_out_conditional_operation().
bool gimple_match_op::resimplify | ( | gimple_seq * | seq, |
tree(* | valueize )(tree) ) |
Match and simplify the toplevel valueized operation THIS. Replaces THIS with a simplified and/or canonicalized result and returns whether any change was made.
References gcc_unreachable, gimple_resimplify1(), gimple_resimplify2(), gimple_resimplify3(), gimple_resimplify4(), gimple_resimplify5(), gimple_resimplify6(), gimple_resimplify7(), and num_ops.
Referenced by fold_build_cond_expr(), gimple_simplify(), gimple_simplify_phiopt(), maybe_fold_comparisons_from_match_pd(), predicate_bbs(), tree_vec_extract(), and vn_nary_build_or_lookup_1().
|
inline |
|
inline |
|
inline |
|
inline |
Change the operation performed to CODE_IN, the type of the result to TYPE_IN, and the number of operands to NUM_OPS_IN. The caller needs to set the operands itself.
Referenced by convert_conditional_op(), gimple_extract(), maybe_resimplify_conditional_op(), set_value(), and tree_vec_extract().
|
inline |
Set the "operation" to be the single value VALUE, such as a constant or SSA_NAME.
References set_op(), TREE_CODE, and TREE_TYPE.
Referenced by gimple_resimplify1(), gimple_resimplify2(), gimple_resimplify3(), and maybe_build_generic_op().
code_helper gimple_match_op::code |
Referenced by check_reduction_path(), cleanup_control_expr_graph(), convert_conditional_op(), factor_out_conditional_operation(), fold_build_cond_expr(), gimple_resimplify1(), gimple_resimplify2(), gimple_resimplify3(), gimple_resimplify4(), gimple_resimplify5(), gimple_resimplify6(), gimple_resimplify7(), gimple_simplified_result_is_gimple_val(), gimple_simplify(), maybe_build_generic_op(), maybe_fold_comparisons_from_match_pd(), maybe_push_res_to_seq(), maybe_resimplify_conditional_op(), phiopt_early_allow(), predicate_bbs(), replace_stmt_with_simplification(), set_op(), set_op(), set_op(), set_op(), set_op(), set_op(), set_op(), set_op(), set_op(), vect_is_simple_reduction(), vect_model_reduction_cost(), vect_transform_reduction(), vectorizable_reduction(), and vn_lookup_simplify_result().
gimple_match_cond gimple_match_op::cond |
Referenced by convert_conditional_op(), gimple_simplify(), maybe_push_res_to_seq(), and maybe_resimplify_conditional_op().
|
static |
Referenced by vn_nary_simplify().
unsigned int gimple_match_op::num_ops |
Referenced by build_call_internal(), check_reduction_path(), convert_conditional_op(), factor_out_conditional_operation(), gimple_simplify(), maybe_push_res_to_seq(), op_or_null(), operands_occurs_in_abnormal_phi(), replace_stmt_with_simplification(), resimplify(), set_op(), set_op(), set_op(), set_op(), set_op(), set_op(), set_op(), set_op(), set_op(), try_conditional_simplification(), vect_mark_pattern_stmts(), vect_transform_reduction(), vectorizable_reduction(), vn_lookup_simplify_result(), and vn_nary_build_or_lookup_1().
tree gimple_match_op::ops[MAX_NUM_OPS] |
Referenced by build_call_internal(), check_reduction_path(), cleanup_control_expr_graph(), convert_conditional_op(), factor_out_conditional_operation(), fold_build_cond_expr(), gimple_extract(), gimple_fold_stmt_to_constant_1(), gimple_match_op(), gimple_match_op(), gimple_match_op(), gimple_match_op(), gimple_match_op(), gimple_match_op(), gimple_match_op(), gimple_resimplify1(), gimple_resimplify2(), gimple_resimplify3(), gimple_resimplify4(), gimple_resimplify5(), gimple_resimplify6(), gimple_resimplify7(), gimple_simplified_result_is_gimple_val(), gimple_simplify(), maybe_build_generic_op(), maybe_fold_comparisons_from_match_pd(), maybe_push_res_to_seq(), maybe_resimplify_conditional_op(), op_or_null(), operands_occurs_in_abnormal_phi(), phiopt_early_allow(), predicate_bbs(), replace_stmt_with_simplification(), set_op(), set_op(), set_op(), set_op(), set_op(), set_op(), set_op(), set_op(), try_conditional_simplification(), vect_mark_pattern_stmts(), vect_transform_reduction(), vectorizable_reduction(), vn_lookup_simplify_result(), vn_nary_build_or_lookup_1(), and vn_nary_simplify().
bool gimple_match_op::reverse |
Referenced by gimple_simplify(), maybe_build_generic_op(), and set_op().
tree gimple_match_op::type |
Referenced by build_call_internal(), check_reduction_path(), convert_conditional_op(), gimple_resimplify1(), gimple_resimplify2(), gimple_resimplify3(), gimple_resimplify4(), gimple_resimplify5(), gimple_resimplify6(), gimple_resimplify7(), maybe_build_generic_op(), maybe_fold_comparisons_from_match_pd(), maybe_push_res_to_seq(), maybe_resimplify_conditional_op(), try_conditional_simplification(), vect_model_reduction_cost(), vect_transform_reduction(), vectorizable_reduction(), and vn_lookup_simplify_result().