#include <basic-block.h>

Data Fields | |
| int | num |
| basic_block | header |
| basic_block | latch |
| basic_block | pre_header |
| edge * | pre_header_edges |
| int | num_pre_header_edges |
| basic_block | first |
| basic_block | last |
| sbitmap | nodes |
| int | num_nodes |
| edge * | entry_edges |
| int | num_entries |
| edge * | exit_edges |
| int | num_exits |
| sbitmap | exits_doms |
| int | depth |
| struct loop ** | pred |
| int | level |
| struct loop * | outer |
| struct loop * | inner |
| struct loop * | next |
| int | invalid |
| void * | aux |
| rtx | vtop |
| rtx | cont |
| rtx | start |
| rtx | end |
| rtx | top |
| rtx | scan_start |
| rtx | sink |
| rtx | exit_labels |
| int | exit_count |
| tree | outer_loop |
| tree | containing_loop |
| enum loop_status_type | status |
| struct loop * | next_nest |
| struct induction * | ind |
| struct lpt_decision | lpt_decision |
| unsigned | ninsns |
| unsigned | av_ninsns |
| unsigned | num_nodes |
| struct loop * | copy |
| tree | nb_iterations |
| tree | estimated_nb_iterations |
| struct nb_iter_bound * | bounds |
| edge | single_exit |
| bool | parallel_p |
Definition at line 371 of file basic-block.h.
| int loop::num |
Definition at line 374 of file basic-block.h.
Referenced by adjust_range_with_scev(), analyze_indirect_ref(), analyze_offset_expr(), analyze_scalar_evolution(), analyze_scalar_evolution_in_loop(), can_convert_to_perfect_nest(), cancel_loop(), canonicalize_loop_induction_variables(), chrec_convert_1(), compute_overall_effect_of_inner_loop(), copy_loop_headers(), create_canonical_iv(), create_data_ref(), create_loop_notes(), create_preheader(), decide_unrolling_and_peeling(), determine_invariantness_stmt(), dump_data_dependence_relation(), estimate_niter_from_size_of_data(), find_and_verify_loops(), find_simple_exit(), fix_loop_structure(), flow_loop_dump(), flow_loop_pre_header_scan(), flow_loops_find(), follow_ssa_edge_in_rhs(), gather_interchange_stats(), gcc_loop_to_lambda_loop(), index_in_loop_nest(), infer_loop_bounds_from_undefined(), instantiate_parameters(), loop_ivs_dump(), loop_niter_by_eval(), move_computations_stmt(), num_ssa_operands(), peel_loops_completely(), place_new_loop(), print_loop(), record_estimate(), replace_uses_equiv_to_x_with_y(), scev_const_prop(), schedule_sm(), simple_iv(), tree_ssa_iv_optimize_loop(), tree_ssa_prefetch_arrays(), tree_ssa_unswitch_loops(), try_unroll_loop_completely(), unloop(), unswitch_loops(), vect_analyze_data_ref_dependence(), vect_analyze_offset_expr(), vect_analyze_pointer_ref_access(), vect_analyze_scalar_cycles(), vect_can_advance_ivs_p(), vect_do_peeling_for_loop_bound(), vect_object_analysis(), vect_update_ivs_after_vectorizer(), and verify_loop_structure().
Definition at line 377 of file basic-block.h.
Referenced by add_loop(), analyze_scalar_evolution_for_all_loop_phi_nodes(), average_num_loop_insns(), can_convert_to_perfect_nest(), can_put_after_inner_loop(), chain_of_csts_start(), combine_blocks(), copy_bbs(), copy_loop_headers(), create_iv(), create_preheader(), decide_peel_completely(), decide_peel_simple(), decide_unroll_runtime_iterations(), decide_unroll_stupid(), decide_unrolling_and_peeling(), determine_lsm_loop(), determine_set_costs(), do_while_loop_p(), duplicate_loop_to_header_edge(), estimate_probability(), expected_loop_iterations(), fill_always_executed_in(), find_bivs(), find_interesting_uses_stmt(), find_loop_location(), find_phi_replacement_condition(), fix_bb_placements(), fix_irreducible_loops(), fix_loop_structure(), flow_loop_dump(), flow_loop_entry_edges_find(), flow_loop_outside_edge_p(), flow_loop_scan(), flow_loops_find(), force_single_succ_latches(), get_loop_body(), get_loop_body_in_bfs_order(), get_loop_body_in_dom_order(), get_loop_body_in_if_conv_order(), if_convertible_loop_p(), if_convertible_modify_expr_p(), if_convertible_phi_p(), loop_latch_edge(), loop_phi_node_p(), loop_preheader_edge(), loop_version(), loopify(), mark_bivs(), perfect_nestify(), predict_loops(), process_phi_nodes(), propagate_freq(), remove_bb(), remove_empty_loop(), should_duplicate_loop_header_p(), simplify_using_initial_conditions(), slpeel_tree_duplicate_loop_to_edge_cfg(), slpeel_update_phi_nodes_for_guard(), slpeel_update_phi_nodes_for_guard1(), slpeel_update_phis_for_duplicate_loop(), tree_duplicate_sese_region(), tree_forwarder_block_p(), tree_ssa_loop_version(), tree_unroll_loop(), tree_unroll_loops_completely(), unswitch_loop(), unswitch_single_loop(), update_vuses_to_preheader(), vect_analyze_loop_form(), vect_analyze_scalar_cycles(), vect_can_advance_ivs_p(), vect_mark_stmts_to_be_vectorized(), vect_transform_loop(), vect_update_ivs_after_vectorizer(), vectorizable_load(), vectorizable_reduction(), and verify_loop_structure().
Definition at line 380 of file basic-block.h.
Referenced by add_loop(), analyze_insns_in_loop(), bsi_insert_on_edge_immediate_loop(), canonicalize_loop_headers(), check_simple_exit(), combine_blocks(), compute_always_reached(), copy_bbs(), create_preheader(), do_while_loop_p(), duplicate_loop_to_header_edge(), estimate_loops_at_level(), estimate_probability(), expected_loop_iterations(), fill_always_executed_in(), fill_sons_in_loop(), flow_loop_dump(), flow_loop_nodes_find(), flow_loops_find(), force_single_succ_latches(), get_loop_body(), get_loop_body_in_bfs_order(), get_loop_body_in_dom_order(), get_loop_body_in_if_conv_order(), get_loop_exit_edges(), if_convertible_bb_p(), ip_end_pos(), ip_normal_pos(), just_once_each_iteration_p(), latch_dominating_def(), loop_exit_at_end_p(), loop_latch_edge(), loop_preheader_edge(), loop_split_edge_with(), loop_version(), loopify(), may_eliminate_iv(), mfb_update_loops(), num_loop_branches(), number_of_iterations_exit(), perfect_nestify(), predict_loops(), remove_bb(), slpeel_can_duplicate_loop_p(), slpeel_make_loop_iterate_ntimes(), slpeel_tree_duplicate_loop_to_edge_cfg(), slpeel_update_phi_nodes_for_guard(), slpeel_update_phi_nodes_for_guard1(), standard_iv_increment_position(), stmt_after_ip_normal_pos(), tree_can_merge_blocks_p(), tree_duplicate_sese_region(), tree_ssa_loop_version(), tree_unroll_loop(), unloop(), unswitch_loop(), vect_analyze_loop_form(), vect_update_ivs_after_vectorizer(), and verify_loop_structure().
Definition at line 383 of file basic-block.h.
Referenced by flow_loop_dump(), flow_loop_pre_header_find(), flow_loop_scan(), vect_analyze_loop_form(), and vect_do_peeling_for_loop_bound().
Definition at line 388 of file basic-block.h.
Referenced by flow_loop_dump(), flow_loop_free(), flow_loop_pre_header_scan(), and vect_do_peeling_for_loop_bound().
Definition at line 391 of file basic-block.h.
Referenced by flow_loop_dump(), and flow_loop_pre_header_scan().
Definition at line 402 of file basic-block.h.
| unsigned loop::num_nodes |
Definition at line 405 of file basic-block.h.
Referenced by add_bb_to_loop(), analyze_insns_in_loop(), average_num_loop_insns(), can_convert_to_perfect_nest(), can_duplicate_loop_p(), cancel_loop(), clean_predicate_lists(), combine_blocks(), compute_always_reached(), destroy_loop_vec_info(), duplicate_loop_to_header_edge(), empty_loop_p(), estimate_loops_at_level(), estimate_probability(), fill_always_executed_in(), find_data_references_in_loop(), find_defs(), find_exits(), find_givs(), find_interesting_uses(), find_invariants_body(), find_simple_exit(), fix_bb_placements(), fix_irreducible_loops(), fix_loop_placement(), fix_loop_structure(), flow_loop_dump(), flow_loop_exit_edges_find(), flow_loop_nodes_find(), flow_loops_find(), gather_mem_refs(), gather_memory_references(), get_loop_body(), get_loop_body_in_bfs_order(), get_loop_body_in_dom_order(), get_loop_body_in_if_conv_order(), get_loop_exit_edges(), if_convertible_loop_p(), infer_loop_bounds_from_undefined(), iv_analysis_loop_init(), loop_only_exit_p(), loop_version(), loopify(), new_loop_vec_info(), num_loop_branches(), num_loop_insns(), perfect_nest_p(), perfect_nestify(), predict_loops(), process_phi_nodes(), referenced_in_one_insn_in_loop_p(), remove_bb_from_loops(), remove_empty_loop(), rename_variables_in_loop(), scale_loop_frequencies(), should_unroll_loop_p(), slpeel_can_duplicate_loop_p(), slpeel_tree_duplicate_loop_to_edge_cfg(), tree_if_conversion(), tree_num_loop_insns(), tree_unswitch_single_loop(), unloop(), unroll_loop_runtime_iterations(), unswitch_single_loop(), vect_analyze_data_refs(), vect_analyze_loop_form(), vect_analyze_operations(), vect_determine_vectorization_factor(), vect_mark_stmts_to_be_vectorized(), vect_pattern_recog(), vect_transform_loop(), and verify_loop_structure().
Definition at line 408 of file basic-block.h.
Referenced by flow_loop_dump(), flow_loop_entry_edges_find(), flow_loop_free(), flow_loop_pre_header_scan(), and slpeel_update_phi_nodes_for_guard().
Definition at line 411 of file basic-block.h.
Referenced by flow_loop_dump(), flow_loop_entry_edges_find(), flow_loop_pre_header_scan(), slpeel_can_duplicate_loop_p(), and vect_analyze_loop_form().
Definition at line 414 of file basic-block.h.
Referenced by flow_loop_dump(), flow_loop_exit_edges_find(), flow_loop_free(), slpeel_can_duplicate_loop_p(), slpeel_make_loop_iterate_ntimes(), slpeel_tree_duplicate_loop_to_edge_cfg(), slpeel_tree_peel_loop_to_edge(), slpeel_update_phi_nodes_for_guard(), slpeel_update_phis_for_duplicate_loop(), vect_analyze_loop_form(), vect_analyze_operations(), vect_do_peeling_for_loop_bound(), and vect_update_ivs_after_vectorizer().
| int loop::num_exits |
Definition at line 417 of file basic-block.h.
Referenced by estimate_probability(), flow_loop_dump(), flow_loop_exit_edges_find(), if_convertible_loop_p(), linear_transform_loops(), predict_loops(), and slpeel_can_duplicate_loop_p().
Definition at line 420 of file basic-block.h.
| int loop::depth |
Definition at line 423 of file basic-block.h.
Referenced by add_bb_to_loop(), add_loop(), build_classic_dir_vector(), build_classic_dist_vector(), compute_data_dependences_for_loop(), compute_scalar_evolution_in_loop(), determine_invariantness_stmt(), establish_preds(), find_common_loop(), fix_loop_structure(), flow_loop_dump(), flow_loop_nested_p(), flow_loop_nodes_find(), flow_loop_tree_node_add(), flow_loop_tree_node_remove(), flow_loops_find(), gather_interchange_stats(), gcd_test(), instantiate_parameters_1(), interpret_loop_phi(), invariant_in_loop_and_outer_loops(), link_loops(), mark_irreducible_loops(), outermost_invariant_loop(), remove_bb_from_loops(), siv_test(), superloop_at_depth(), try_interchange_loops(), and ziv_test().
struct loop ** loop::pred [read] |
Definition at line 426 of file basic-block.h.
Referenced by add_bb_to_loop(), establish_preds(), find_common_loop(), fix_bb_placements(), fix_loop_placement(), flow_loop_free(), flow_loop_nested_p(), flow_loop_tree_node_add(), flow_loop_tree_node_remove(), flow_loops_find(), mark_irreducible_loops(), remove_bb_from_loops(), and superloop_at_depth().
| int loop::level |
Definition at line 430 of file basic-block.h.
Referenced by add_loop(), basic_induction_var(), determine_max_movement(), duplicate_loop(), flow_loop_dump(), flow_loop_level_compute(), move_computations_stmt(), and prescan_loop().
struct loop * loop::outer [read] |
Definition at line 433 of file basic-block.h.
Referenced by analyze_scalar_evolution_in_loop(), build_classic_dir_vector(), build_classic_dist_vector(), cancel_loop(), create_loop_notes(), create_preheader(), decide_unrolling_and_peeling(), determine_invariantness_stmt(), determine_lsm(), establish_preds(), find_and_verify_loops(), find_common_loop(), find_uses_to_rename_use(), fix_loop_placement(), fix_loop_placements(), fix_loop_structure(), flow_loop_dump(), flow_loop_tree_node_add(), flow_loop_tree_node_remove(), flow_loops_find(), invalidate_loops_containing_label(), invariant_in_loop_and_outer_loops(), loopify(), mark_loop_exit_edges(), mark_loop_jump(), mark_single_exit_loops(), move_computations_stmt(), move_loop_invariants(), outermost_invariant_loop(), peel_loops_completely(), slpeel_can_duplicate_loop_p(), slpeel_tree_duplicate_loop_to_edge_cfg(), slpeel_update_phi_nodes_for_guard1(), slpeel_update_phi_nodes_for_guard2(), tree_duplicate_sese_region(), tree_ssa_iv_optimize(), unloop(), unroll_and_peel_loops(), update_single_exits_after_duplication(), vect_transform_loop(), and verify_loop_structure().
struct loop * loop::inner [read] |
Definition at line 436 of file basic-block.h.
Referenced by can_convert_to_perfect_nest(), can_put_after_inner_loop(), cancel_loop(), cancel_loop_tree(), decide_peel_completely(), decide_unrolling_and_peeling(), depth_of_nest(), determine_lsm(), duplicate_loop_to_header_edge(), duplicate_subloops(), establish_preds(), estimate_loops_at_level(), fill_always_executed_in(), find_loop_nest(), find_loop_nest_1(), fix_loop_structure(), flow_loop_level_compute(), flow_loop_tree_node_add(), flow_loop_tree_node_remove(), flow_loops_find(), gather_interchange_stats(), gcc_loopnest_to_lambda_loopnest(), get_exit_conditions_rec(), get_loop_level(), if_convertible_loop_p(), lambda_loopnest_to_gcc_loopnest(), linear_transform_loops(), loop_version(), move_loop_invariants(), peel_loops_completely(), perfect_nest_p(), perfect_nestify(), print_loop(), remove_empty_loops(), select_loops_exit_conditions(), slpeel_can_duplicate_loop_p(), tree_ssa_iv_optimize(), tree_ssa_lim_initialize(), tree_ssa_loop_version(), tree_ssa_unswitch_loops(), tree_unswitch_loop(), tree_unswitch_single_loop(), try_interchange_loops(), try_remove_empty_loop(), try_unroll_loop_completely(), unloop(), unroll_and_peel_loops(), unswitch_loop(), unswitch_loops(), unswitch_single_loop(), and vect_analyze_loop_form().
struct loop * loop::next [read] |
Definition at line 439 of file basic-block.h.
Referenced by decide_unrolling_and_peeling(), determine_lsm(), duplicate_loop_to_header_edge(), duplicate_subloops(), establish_preds(), estimate_loops_at_level(), fill_always_executed_in(), find_loop_nest_1(), fix_loop_structure(), flow_loop_level_compute(), flow_loop_tree_node_add(), flow_loop_tree_node_remove(), flow_loops_find(), get_exit_conditions_rec(), get_loop_level(), linear_transform_loops(), move_loop_invariants(), peel_loops_completely(), print_loop(), remove_empty_loops(), tree_ssa_iv_optimize(), tree_ssa_lim_initialize(), try_remove_empty_loop(), and unroll_and_peel_loops().
| int loop::invalid |
Definition at line 442 of file basic-block.h.
Referenced by find_and_verify_loops(), flow_loop_dump(), invalidate_loops_containing_label(), loop_optimize(), and mark_loop_jump().
Definition at line 445 of file basic-block.h.
Referenced by duplicate_loop_to_header_edge(), fill_always_executed_in(), find_exits(), free_loop_data(), free_simple_loop_desc(), get_simple_loop_desc(), loop_data(), loop_optimize(), simple_loop_desc(), tree_ssa_iv_optimize_finalize(), tree_ssa_iv_optimize_init(), and vectorize_loops().
Definition at line 458 of file basic-block.h.
Referenced by back_branch_in_range_p(), check_dbra_loop(), check_final_value(), count_insns_in_loop(), emit_prefetch_instructions(), find_and_verify_loops(), for_each_insn_in_loop(), load_mems(), loop_bivs_check(), loop_bivs_init_find(), loop_call_insn_hoist(), loop_dump_aux(), loop_find_equiv_value(), loop_insn_hoist(), loop_reg_used_before_p(), loop_regs_scan(), mark_loop_jump(), maybe_eliminate_biv(), move_movables(), prescan_loop(), scan_loop(), and strength_reduce().
Definition at line 461 of file basic-block.h.
Referenced by back_branch_in_range_p(), check_dbra_loop(), check_final_value(), count_insns_in_loop(), final_giv_value(), find_and_verify_loops(), for_each_insn_in_loop(), load_mems(), loop_biv_eliminable_p(), loop_bivs_init_find(), loop_dump_aux(), loop_iterations(), loop_optimize(), loop_reg_used_before_p(), loop_regs_scan(), maybe_eliminate_biv(), move_movables(), next_insn_in_loop(), prescan_loop(), record_giv(), reg_dead_after_loop(), scan_loop(), and strength_reduce().
Definition at line 465 of file basic-block.h.
Referenced by count_insns_in_loop(), for_each_insn_in_loop(), load_mems(), loop_dump_aux(), loop_givs_reduce(), loop_regs_scan(), next_insn_in_loop(), and scan_loop().
Definition at line 468 of file basic-block.h.
Referenced by for_each_insn_in_loop(), load_mems(), loop_dump_aux(), loop_givs_reduce(), loop_reg_used_before_p(), next_insn_in_loop(), scan_loop(), try_copy_prop(), and try_swap_copy_prop().
Definition at line 471 of file basic-block.h.
Referenced by loop_insn_sink(), loop_iv_add_mult_sink(), and scan_loop().
Definition at line 482 of file basic-block.h.
Referenced by find_and_verify_loops(), for_each_insn_in_loop(), loop_dump_aux(), mark_loop_jump(), and reg_dead_after_loop().
| int loop::exit_count |
Definition at line 486 of file basic-block.h.
Referenced by check_dbra_loop(), final_biv_value(), final_giv_value(), find_and_verify_loops(), loop_dump_aux(), loop_insn_sink_or_swim(), mark_loop_jump(), and reg_dead_after_loop().
Definition at line 112 of file dependence.c.
Referenced by add_loop(), build_def_use(), check_node_dependence(), find_and_verify_loops(), have_induction_variable(), link_loops(), and mark_loop_jump().
Definition at line 118 of file dependence.c.
Referenced by add_loop(), build_def_use(), and check_node_dependence().
struct loop * loop::next_nest [read] |
Definition at line 120 of file dependence.c.
Referenced by add_loop(), check_node_dependence(), link_loops(), and normalize_coefficients().
Definition at line 122 of file dependence.c.
Referenced by add_loop(), check_subscript_induction(), find_induction_variable(), have_induction_variable(), and normalize_coefficients().
struct lpt_decision loop::lpt_decision [read] |
Definition at line 76 of file cfgloop.h.
Referenced by decide_peel_completely(), decide_peel_once_rolling(), decide_peel_simple(), decide_unroll_constant_iterations(), decide_unroll_runtime_iterations(), decide_unroll_stupid(), decide_unrolling_and_peeling(), peel_loop_simple(), peel_loops_completely(), unroll_and_peel_loops(), unroll_loop_constant_iterations(), unroll_loop_runtime_iterations(), and unroll_loop_stupid().
| unsigned loop::ninsns |
Definition at line 79 of file cfgloop.h.
Referenced by average_num_loop_insns(), decide_peel_completely(), decide_peel_once_rolling(), decide_peel_simple(), decide_unroll_constant_iterations(), decide_unroll_runtime_iterations(), decide_unroll_stupid(), decide_unrolling_and_peeling(), num_loop_insns(), peel_loops_completely(), and try_unroll_loop_completely().
| unsigned loop::av_ninsns |
Definition at line 82 of file cfgloop.h.
Referenced by decide_unroll_constant_iterations(), decide_unroll_runtime_iterations(), decide_unroll_stupid(), and decide_unrolling_and_peeling().
| unsigned loop::num_nodes |
struct loop * loop::copy [read] |
Definition at line 138 of file cfgloop.h.
Referenced by copy_bbs(), duplicate_loop(), duplicate_loop_to_header_edge(), and tree_duplicate_sese_region().
Definition at line 185 of file cfgloop.h.
Referenced by free_numbers_of_iterations_estimates_loop(), number_of_iterations_in_loop(), scev_initialize(), scev_reset(), set_nb_iterations_in_loop(), slpeel_make_loop_iterate_ntimes(), and substitute_in_loop_info().
Definition at line 189 of file cfgloop.h.
Referenced by analyze_array_indexes(), analyze_subscript_affine_affine(), compute_estimated_nb_iterations(), compute_overlap_steps_for_affine_1_2(), estimate_numbers_of_iterations_loop(), find_data_references_in_loop(), free_numbers_of_iterations_estimates_loop(), get_number_of_iters_for_loop(), and substitute_in_loop_info().
struct nb_iter_bound * loop::bounds [read] |
Definition at line 192 of file cfgloop.h.
Referenced by can_count_iv_in_wider_type(), compute_estimated_nb_iterations(), free_numbers_of_iterations_estimates_loop(), record_estimate(), and scev_probably_wraps_p().
Definition at line 196 of file cfgloop.h.
Referenced by can_convert_to_perfect_nest(), canonicalize_loop_induction_variables(), exit_phi_for_loop_p(), get_exit_conditions_rec(), get_loop_exit_condition(), if_convertible_loop_p(), lambda_loopnest_to_gcc_loopnest(), linear_transform_loops(), loop_closed_phi_def(), loop_only_exit_p(), loop_version(), mark_single_exit_loops(), number_of_iterations_in_loop(), perfect_nestify(), scev_const_prop(), single_dom_exit(), slpeel_can_duplicate_loop_p(), slpeel_make_loop_iterate_ntimes(), slpeel_tree_duplicate_loop_to_edge_cfg(), slpeel_tree_peel_loop_to_edge(), slpeel_update_phi_nodes_for_guard1(), slpeel_update_phi_nodes_for_guard2(), slpeel_update_phis_for_duplicate_loop(), tree_ssa_loop_version(), update_single_exits_after_duplication(), vect_analyze_loop_form(), vect_analyze_operations(), vect_create_epilog_for_reduction(), vect_do_peeling_for_loop_bound(), vect_stmt_relevant_p(), vect_transform_loop(), vect_update_ivs_after_vectorizer(), and verify_loop_structure().
Definition at line 202 of file cfgloop.h.
Referenced by find_data_references_in_loop(), and initialize_loops_parallel_p().
1.5.6