|
GCC Middle and Back End API Reference
|
#include <ifcvt.h>

Data Fields | |
| basic_block | test_bb |
| basic_block | then_bb |
| basic_block | else_bb |
| basic_block | join_bb |
| rtx_insn * | jump |
| rtx | cond |
| rtx | rev_cond |
| rtx_insn * | cond_earliest |
| rtx_insn * | insn_a |
| rtx_insn * | insn_b |
| rtx | a |
| rtx | b |
| rtx | x |
| rtx | orig_x |
| bool | then_else_reversed |
| bool | cond_inverted |
| bool | then_simple |
| bool | else_simple |
| bool | speed_p |
| unsigned int | original_cost |
| unsigned int | max_seq_cost |
| const char * | transform_name |
Used by noce_process_if_block to communicate with its subroutines. The subroutines know that A and B may be evaluated freely. They know that X is a register. They should insert new instructions before cond_earliest.
| rtx noce_if_info::a |
Referenced by end_ifcvt_sequence(), noce_bbs_ok_for_cond_zero_arith(), noce_get_alt_condition(), noce_process_if_block(), noce_try_abs(), noce_try_addcc(), noce_try_bitop(), noce_try_cmove(), noce_try_cmove_arith(), noce_try_ifelse_collapse(), noce_try_inverse_constants(), noce_try_minmax(), noce_try_move(), noce_try_sign_bit_splat(), noce_try_sign_mask(), noce_try_store_flag(), noce_try_store_flag_constants(), and noce_try_store_flag_mask().
| rtx noce_if_info::b |
Referenced by end_ifcvt_sequence(), noce_bbs_ok_for_cond_zero_arith(), noce_get_alt_condition(), noce_process_if_block(), noce_try_abs(), noce_try_addcc(), noce_try_bitop(), noce_try_cmove(), noce_try_cmove_arith(), noce_try_ifelse_collapse(), noce_try_inverse_constants(), noce_try_minmax(), noce_try_move(), noce_try_sign_bit_splat(), noce_try_sign_mask(), noce_try_store_flag(), noce_try_store_flag_constants(), and noce_try_store_flag_mask().
| rtx noce_if_info::cond |
Referenced by cond_move_process_if_block(), dead_or_predicable(), end_ifcvt_sequence(), find_cond_trap(), noce_bbs_ok_for_cond_zero_arith(), noce_emit_cmove(), noce_emit_czero(), noce_emit_store_flag(), noce_find_if_block(), noce_get_alt_condition(), noce_process_if_block(), noce_reversed_cond_code(), noce_try_abs(), noce_try_addcc(), noce_try_bitop(), noce_try_cmove(), noce_try_cmove_arith(), noce_try_ifelse_collapse(), noce_try_inverse_constants(), noce_try_minmax(), noce_try_move(), noce_try_sign_bit_splat(), and noce_try_sign_mask().
| rtx_insn* noce_if_info::cond_earliest |
| bool noce_if_info::cond_inverted |
Referenced by cond_move_convert_if_block(), and noce_find_if_block().
| basic_block noce_if_info::else_bb |
| bool noce_if_info::else_simple |
Referenced by noce_process_if_block(), noce_simple_bbs(), and noce_try_cmove_arith().
| rtx_insn* noce_if_info::insn_a |
Referenced by noce_process_if_block(), noce_try_abs(), noce_try_addcc(), noce_try_bitop(), noce_try_cmove(), noce_try_cmove_arith(), noce_try_cond_zero_arith(), noce_try_ifelse_collapse(), noce_try_inverse_constants(), noce_try_minmax(), noce_try_move(), noce_try_sign_bit_splat(), noce_try_sign_mask(), noce_try_store_flag(), noce_try_store_flag_constants(), and noce_try_store_flag_mask().
| rtx_insn * noce_if_info::insn_b |
Referenced by noce_process_if_block(), noce_try_cmove_arith(), and noce_try_sign_mask().
| basic_block noce_if_info::join_bb |
| rtx_insn* noce_if_info::jump |
Referenced by cond_move_process_if_block(), dead_or_predicable(), find_cond_trap(), find_if_case_1(), noce_convert_multiple_sets(), noce_convert_multiple_sets_1(), noce_emit_cmove(), noce_emit_store_flag(), noce_find_if_block(), noce_get_alt_condition(), noce_process_if_block(), noce_reversed_cond_code(), noce_try_abs(), noce_try_addcc(), noce_try_bitop(), noce_try_cmove(), noce_try_cmove_arith(), noce_try_cond_zero_arith(), noce_try_ifelse_collapse(), noce_try_inverse_constants(), noce_try_minmax(), noce_try_move(), noce_try_sign_bit_splat(), noce_try_sign_mask(), noce_try_store_flag(), noce_try_store_flag_constants(), and noce_try_store_flag_mask().
| unsigned int noce_if_info::max_seq_cost |
Referenced by default_noce_conversion_profitable_p(), and noce_find_if_block().
| rtx noce_if_info::orig_x |
Referenced by noce_process_if_block(), and noce_try_cmove_arith().
| unsigned int noce_if_info::original_cost |
Referenced by noce_convert_multiple_sets(), noce_find_if_block(), and noce_process_if_block().
| rtx noce_if_info::rev_cond |
| bool noce_if_info::speed_p |
| basic_block noce_if_info::test_bb |
| basic_block noce_if_info::then_bb |
| bool noce_if_info::then_else_reversed |
| bool noce_if_info::then_simple |
Referenced by noce_process_if_block(), noce_simple_bbs(), and noce_try_cmove_arith().
| const char* noce_if_info::transform_name |
Referenced by noce_convert_multiple_sets(), noce_process_if_block(), noce_try_abs(), noce_try_addcc(), noce_try_bitop(), noce_try_cmove(), noce_try_cmove_arith(), noce_try_cond_zero_arith(), noce_try_ifelse_collapse(), noce_try_inverse_constants(), noce_try_minmax(), noce_try_move(), noce_try_sign_bit_splat(), noce_try_sign_mask(), noce_try_store_flag(), noce_try_store_flag_constants(), and noce_try_store_flag_mask().
| rtx noce_if_info::x |
Referenced by end_ifcvt_sequence(), find_cond_trap(), noce_get_alt_condition(), noce_process_if_block(), noce_try_abs(), noce_try_addcc(), noce_try_bitop(), noce_try_cmove(), noce_try_cmove_arith(), noce_try_cond_zero_arith(), noce_try_ifelse_collapse(), noce_try_inverse_constants(), noce_try_minmax(), noce_try_move(), noce_try_sign_bit_splat(), noce_try_sign_mask(), noce_try_store_flag(), noce_try_store_flag_constants(), and noce_try_store_flag_mask().