◆ reachability
Enumerator |
---|
ALL_BLOCKS | |
REACHABLE_BLOCKS | |
REACHABLE_BLOCKS_PRESERVING_FLAGS | |
◆ find_candidates_dom_walker()
find_candidates_dom_walker::find_candidates_dom_walker |
( |
cdi_direction | direction | ) |
|
|
inline |
◆ after_dom_children()
virtual void dom_walker::after_dom_children |
( |
basic_block | | ) |
|
|
inlinevirtualinherited |
◆ bb_reachable()
◆ before_dom_children()
Find strength-reduction candidates in block BB.
Reimplemented from dom_walker.
References CASE_CONVERT, cfun, gcc_fallthrough, gimple_assign_lhs(), gimple_assign_rhs1(), gimple_assign_rhs2(), gimple_assign_rhs_code(), gimple_assign_single_p(), gimple_vuse(), gsi_end_p(), gsi_next(), gsi_start_bb(), gsi_start_phis(), gsi_stmt(), INTEGRAL_TYPE_P, is_gimple_assign(), NULL, NULL_TREE, optimize_bb_for_speed_p(), POINTER_TYPE_P, slsr_process_add(), slsr_process_cast(), slsr_process_copy(), slsr_process_mul(), slsr_process_neg(), slsr_process_phi(), slsr_process_ref(), stmt_could_throw_p(), TREE_CODE, and TREE_TYPE.
◆ propagate_unreachable_to_edges()
◆ walk()
Recursively walk the dominator tree.
BB is the basic block we are currently visiting.
References dom_walker::after_dom_children(), dom_walker::bb_reachable(), dom_walker::before_dom_children(), CDI_DOMINATORS, cfun, dump_file, dump_flags, EDGE_COUNT, ENTRY_BLOCK_PTR_FOR_FN, EXIT_BLOCK_PTR_FOR_FN, first_dom_son(), FOR_EACH_EDGE, free(), i, last_basic_block_for_fn, dom_walker::m_bb_to_rpo, dom_walker::m_dom_direction, dom_walker::m_reachability, dom_walker::m_unreachable_dom, dom_walker::m_user_bb_to_rpo, n_basic_blocks_for_fn, next_dom_son(), NULL, pre_and_rev_post_order_compute(), basic_block_def::preds, dom_walker::propagate_unreachable_to_edges(), dom_walker::REACHABLE_BLOCKS, set_all_edges_as_executable(), sort_bbs_postorder(), dom_walker::STOP, basic_block_def::succs, and worklist.
Referenced by array_bounds_checker::check(), eliminate_with_rpo_vn(), find_comparisons(), get_non_trapping(), ipa_analyze_node(), ipcp_transform_function(), rewrite_blocks(), and substitute_and_fold_engine::substitute_and_fold().
◆ m_bb_to_rpo
int* dom_walker::m_bb_to_rpo |
|
privateinherited |
◆ m_dom_direction
◆ m_reachability
◆ m_unreachable_dom
◆ m_user_bb_to_rpo
bool dom_walker::m_user_bb_to_rpo |
|
privateinherited |
◆ STOP
The documentation for this class was generated from the following file: