GCC Middle and Back End API Reference
|
#include <tree-ssa-loop.h>
Data Fields | |
tree | assumptions |
tree | may_be_zero |
tree | niter |
widest_int | max |
affine_iv | control |
tree | bound |
enum tree_code | cmp |
Description of number of iterations of a loop. All the expressions inside the structure can be evaluated at the end of the loop's preheader (and due to ssa form, also anywhere inside the body of the loop).
tree tree_niter_desc::assumptions |
Referenced by assert_loop_rolls_lt(), assert_no_overflow_lt(), number_of_iterations_cltz(), number_of_iterations_cltz_complement(), number_of_iterations_cond(), number_of_iterations_exit(), number_of_iterations_exit_assumptions(), number_of_iterations_le(), number_of_iterations_lt_to_ne(), number_of_iterations_ne(), number_of_iterations_popcount(), number_of_iterations_until_wrap(), record_control_iv(), and vect_get_loop_niters().
tree tree_niter_desc::bound |
Referenced by can_unroll_loop_p(), cand_value_at(), compute_new_first_bound(), determine_exit_conditions(), determine_group_iv_cost_cond(), estimate_numbers_of_iterations(), may_eliminate_iv(), n_of_executions_at_most(), number_of_iterations_cltz(), number_of_iterations_cltz_complement(), number_of_iterations_cond(), number_of_iterations_lt(), number_of_iterations_ne(), number_of_iterations_popcount(), number_of_iterations_until_wrap(), parm_decl_cost(), and record_estimate().
enum tree_code tree_niter_desc::cmp |
Referenced by can_unroll_loop_p(), cand_value_at(), compute_new_first_bound(), determine_exit_conditions(), loop_niter_by_eval(), n_of_executions_at_most(), number_of_iterations_cltz(), number_of_iterations_cltz_complement(), number_of_iterations_cond(), number_of_iterations_lt(), number_of_iterations_ne(), number_of_iterations_popcount(), and number_of_iterations_until_wrap().
affine_iv tree_niter_desc::control |
widest_int tree_niter_desc::max |
Referenced by derive_constant_upper_bound_ops(), estimate_numbers_of_iterations(), may_eliminate_iv(), number_of_iterations_cltz(), number_of_iterations_cltz_complement(), number_of_iterations_cond(), number_of_iterations_exit_assumptions(), number_of_iterations_lt(), number_of_iterations_ne(), number_of_iterations_popcount(), and number_of_iterations_until_wrap().
tree tree_niter_desc::may_be_zero |
Referenced by assert_loop_rolls_lt(), can_unroll_loop_p(), canonicalize_loop_induction_variables(), determine_exit_conditions(), find_loop_niter(), gen_parallel_loop(), iv_elimination_compare_lt(), may_eliminate_iv(), number_of_iterations_cltz(), number_of_iterations_cltz_complement(), number_of_iterations_cond(), number_of_iterations_exit_assumptions(), number_of_iterations_lt(), number_of_iterations_lt_to_ne(), number_of_iterations_popcount(), number_of_iterations_until_wrap(), number_of_latch_executions(), vec_init_loop_exit_info(), and vect_get_loop_niters().
tree tree_niter_desc::niter |
Referenced by cand_value_at(), canonicalize_loop_induction_variables(), determine_exit_conditions(), estimate_numbers_of_iterations(), find_induction_variables(), find_loop_niter(), find_loop_niter_by_eval(), gen_parallel_loop(), iv_elimination_compare_lt(), loop_exits_before_overflow(), may_eliminate_iv(), n_of_executions_at_most(), niter_for_exit(), number_of_iterations_cltz(), number_of_iterations_cltz_complement(), number_of_iterations_cond(), number_of_iterations_exit_assumptions(), number_of_iterations_lt(), number_of_iterations_ne(), number_of_iterations_popcount(), number_of_iterations_until_wrap(), remove_redundant_iv_tests(), split_loop(), unroll_jam_possible_p(), and vect_get_loop_niters().