aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-cfgcleanup.c
diff options
context:
space:
mode:
authorNathan Froyd <froydnj@codesourcery.com>2010-10-21 13:01:35 +0000
committerNathan Froyd <froydnj@gcc.gnu.org>2010-10-21 13:01:35 +0000
commit31ff2426f662ec821ef48bee12eb3f08e4e16d9b (patch)
tree25c12529017cf06539baa62937edd24614e91926 /gcc/tree-cfgcleanup.c
parent2f7ba24e1f6367bf8c1a094ec85eb4064f7cf6ff (diff)
downloadgcc-31ff2426f662ec821ef48bee12eb3f08e4e16d9b.zip
gcc-31ff2426f662ec821ef48bee12eb3f08e4e16d9b.tar.gz
gcc-31ff2426f662ec821ef48bee12eb3f08e4e16d9b.tar.bz2
cfgloop.c (flow_loops_find): Call bb_has_abnormal_pred.
* cfgloop.c (flow_loops_find): Call bb_has_abnormal_pred. * reload1.c (has_nonexceptional_receiver): Likewise. * tree-into-ssa.c (rewrite_update_enter_block): Likewise. (create_new_def_for): Likewise. * tree-cfgcleanup.c (remove_forwarder_block): Likewise. (merge_phi_nodes): Likewise. (has_abnormal_incoming_edge_p): Delete. From-SVN: r165772
Diffstat (limited to 'gcc/tree-cfgcleanup.c')
-rw-r--r--gcc/tree-cfgcleanup.c21
1 files changed, 3 insertions, 18 deletions
diff --git a/gcc/tree-cfgcleanup.c b/gcc/tree-cfgcleanup.c
index 3c1ca2d..ae23cfc 100644
--- a/gcc/tree-cfgcleanup.c
+++ b/gcc/tree-cfgcleanup.c
@@ -338,21 +338,6 @@ tree_forwarder_block_p (basic_block bb, bool phi_wanted)
return true;
}
-/* Return true if BB has at least one abnormal incoming edge. */
-
-static inline bool
-has_abnormal_incoming_edge_p (basic_block bb)
-{
- edge e;
- edge_iterator ei;
-
- FOR_EACH_EDGE (e, ei, bb->preds)
- if (e->flags & EDGE_ABNORMAL)
- return true;
-
- return false;
-}
-
/* If all the PHI nodes in DEST have alternatives for E1 and E2 and
those alternatives are equal in each of the PHI nodes, then return
true, else return false. */
@@ -418,8 +403,8 @@ remove_forwarder_block (basic_block bb)
So if there is an abnormal edge to BB, proceed only if there is
no abnormal edge to DEST and there are no phi nodes in DEST. */
- if (has_abnormal_incoming_edge_p (bb)
- && (has_abnormal_incoming_edge_p (dest)
+ if (bb_has_abnormal_pred (bb)
+ && (bb_has_abnormal_pred (dest)
|| !gimple_seq_empty_p (phi_nodes (dest))))
return false;
@@ -990,7 +975,7 @@ merge_phi_nodes (void)
if (gimple_seq_empty_p (phi_nodes (dest))
/* We don't want to deal with a basic block with
abnormal edges. */
- || has_abnormal_incoming_edge_p (bb))
+ || bb_has_abnormal_pred (bb))
continue;
if (!dominated_by_p (CDI_DOMINATORS, dest, bb))