diff options
author | Richard Biener <rguenther@suse.de> | 2021-11-10 12:37:32 +0100 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2021-11-11 09:20:15 +0100 |
commit | 0136f25ac063b811501b71c0433cf4bac3549206 (patch) | |
tree | 3a7477dbea2a56db564bf9ab0ae52de5afb65c78 /gcc/gimple-predicate-analysis.cc | |
parent | a11afa7af8ae496a403be9f6dac9e72a27d59466 (diff) | |
download | gcc-0136f25ac063b811501b71c0433cf4bac3549206.zip gcc-0136f25ac063b811501b71c0433cf4bac3549206.tar.gz gcc-0136f25ac063b811501b71c0433cf4bac3549206.tar.bz2 |
Remove find_pdom and find_dom
This removes now useless wrappers around get_immediate_dominator.
2021-11-11 Richard Biener <rguenther@suse.de>
* cfganal.c (find_pdom): Remove.
(control_dependences::find_control_dependence): Remove
special-casing of entry block, call get_immediate_dominator
directly.
* gimple-predicate-analysis.cc (find_pdom): Remove.
(find_dom): Likewise.
(find_control_equiv_block): Call get_immediate_dominator
directly.
(compute_control_dep_chain): Likewise.
(predicate::init_from_phi_def): Likewise.
Diffstat (limited to 'gcc/gimple-predicate-analysis.cc')
-rw-r--r-- | gcc/gimple-predicate-analysis.cc | 36 |
1 files changed, 3 insertions, 33 deletions
diff --git a/gcc/gimple-predicate-analysis.cc b/gcc/gimple-predicate-analysis.cc index f0c8444..454113d 100644 --- a/gcc/gimple-predicate-analysis.cc +++ b/gcc/gimple-predicate-analysis.cc @@ -45,36 +45,6 @@ #define DEBUG_PREDICATE_ANALYZER 1 -/* Find the immediate postdominator of the specified basic block BB. */ - -static inline basic_block -find_pdom (basic_block bb) -{ - basic_block exit_bb = EXIT_BLOCK_PTR_FOR_FN (cfun); - if (bb == exit_bb) - return exit_bb; - - if (basic_block pdom = get_immediate_dominator (CDI_POST_DOMINATORS, bb)) - return pdom; - - return exit_bb; -} - -/* Find the immediate dominator of the specified basic block BB. */ - -static inline basic_block -find_dom (basic_block bb) -{ - basic_block entry_bb = ENTRY_BLOCK_PTR_FOR_FN (cfun); - if (bb == entry_bb) - return entry_bb; - - if (basic_block dom = get_immediate_dominator (CDI_DOMINATORS, bb)) - return dom; - - return entry_bb; -} - /* Return true if BB1 is postdominating BB2 and BB1 is not a loop exit bb. The loop exit bb check is simple and does not cover all cases. */ @@ -96,7 +66,7 @@ is_non_loop_exit_postdominating (basic_block bb1, basic_block bb2) static inline basic_block find_control_equiv_block (basic_block bb) { - basic_block pdom = find_pdom (bb); + basic_block pdom = get_immediate_dominator (CDI_POST_DOMINATORS, bb); /* Skip the postdominating bb that is also a loop exit. */ if (!is_non_loop_exit_postdominating (pdom, bb)) @@ -1167,7 +1137,7 @@ compute_control_dep_chain (basic_block dom_bb, const_basic_block dep_bb, break; } - cd_bb = find_pdom (cd_bb); + cd_bb = get_immediate_dominator (CDI_POST_DOMINATORS, cd_bb); post_dom_check++; if (cd_bb == EXIT_BLOCK_PTR_FOR_FN (cfun) || post_dom_check > MAX_POSTDOM_CHECK) @@ -1788,7 +1758,7 @@ predicate::init_from_phi_def (gphi *phi) basic_block phi_bb = gimple_bb (phi); /* Find the closest dominating bb to be the control dependence root. */ - basic_block cd_root = find_dom (phi_bb); + basic_block cd_root = get_immediate_dominator (CDI_DOMINATORS, phi_bb); if (!cd_root) return false; |