Commit 7510740d by Kazu Hirata Committed by Kazu Hirata

* tree-cfg.c (tree_split_edge): Speed up by using find_edge.

From-SVN: r91341
parent 276318a5
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
* cse.c, tree-ssa-operands.c: Fix comment typos. * cse.c, tree-ssa-operands.c: Fix comment typos.
* tree-cfg.c (tree_split_edge): Speed up by using find_edge.
2004-11-26 James A. Morrison <phython@gcc.gnu.org> 2004-11-26 James A. Morrison <phython@gcc.gnu.org>
PR target/18510 PR target/18510
......
...@@ -3144,7 +3144,6 @@ tree_split_edge (edge edge_in) ...@@ -3144,7 +3144,6 @@ tree_split_edge (edge edge_in)
{ {
basic_block new_bb, after_bb, dest, src; basic_block new_bb, after_bb, dest, src;
edge new_edge, e; edge new_edge, e;
edge_iterator ei;
/* Abnormal edges cannot be split. */ /* Abnormal edges cannot be split. */
gcc_assert (!(edge_in->flags & EDGE_ABNORMAL)); gcc_assert (!(edge_in->flags & EDGE_ABNORMAL));
...@@ -3155,13 +3154,10 @@ tree_split_edge (edge edge_in) ...@@ -3155,13 +3154,10 @@ tree_split_edge (edge edge_in)
/* Place the new block in the block list. Try to keep the new block /* Place the new block in the block list. Try to keep the new block
near its "logical" location. This is of most help to humans looking near its "logical" location. This is of most help to humans looking
at debugging dumps. */ at debugging dumps. */
FOR_EACH_EDGE (e, ei, dest->preds) if (dest->prev_bb && find_edge (dest->prev_bb, dest))
if (e->src->next_bb == dest)
break;
if (!e)
after_bb = dest->prev_bb;
else
after_bb = edge_in->src; after_bb = edge_in->src;
else
after_bb = dest->prev_bb;
new_bb = create_empty_bb (after_bb); new_bb = create_empty_bb (after_bb);
new_bb->frequency = EDGE_FREQUENCY (edge_in); new_bb->frequency = EDGE_FREQUENCY (edge_in);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment