aboutsummaryrefslogtreecommitdiff
path: root/gcc/sched-ebb.c
diff options
context:
space:
mode:
authorNathan Froyd <froydnj@codesourcery.com>2010-10-21 02:33:33 +0000
committerNathan Froyd <froydnj@gcc.gnu.org>2010-10-21 02:33:33 +0000
commit0fd4b31d684af56704c69cdbc8a0c891403ac672 (patch)
tree46c04a0ca71f226e6c7a15bdb22ae8bb69768800 /gcc/sched-ebb.c
parentb56f8e7c2adbbb60bbb3aef976dc6ebb22810f22 (diff)
downloadgcc-0fd4b31d684af56704c69cdbc8a0c891403ac672.zip
gcc-0fd4b31d684af56704c69cdbc8a0c891403ac672.tar.gz
gcc-0fd4b31d684af56704c69cdbc8a0c891403ac672.tar.bz2
basic-block.h (find_fallthru_edge): Define.
* basic-block.h (find_fallthru_edge): Define. * cfgcleanup.c (merge_blocks_move): Use it. (try_crossjump_bb): Likewise. * cfglayout.c (fixup_reorder_chains): Likewise. (fixup_fallthru_exit_predecessor): Likewise. * cfgrtl.c (rtl_split_edge): Likewise. (rtl_verify_flow_info): Likewise. * function.c (thread_prologue_and_epilogue_insns): Likewise. * gimple-pretty-print.c (dump_implicit_edges): Likewise. * ifcvt.c (block_fallthru): Likewise. * reload1.c (fixup_abnormal_edges): Likewise. * sched-ebb.c (being_schedule_ready): Likewise. (schedule_ebb): Likwise. * sched-rgn.c (find_single_block_region): Likewise. * sel-sched-ir.c (bb_ends_ebb_p): Likewise. * tree-complex.c (expand_complex_move): Likewise. * sched-int.h (find_fallthru_edge): Rename to... (find_fallthru_edge_from): ...this. * haifa-sched.c (find_fallthru_edge): Rename to... (find_fallthru_edge_from): ...this. Use new find_fallthru_edge. (init_before_recovery): Call find_fallthru_edge_from. * sel-sched-ir.c (merge_fences): Likewise. * sel-sched.c (in_fallthru_bb_p): Likewise. (move_cond_jump): Likewise. From-SVN: r165748
Diffstat (limited to 'gcc/sched-ebb.c')
-rw-r--r--gcc/sched-ebb.c10
1 files changed, 2 insertions, 8 deletions
diff --git a/gcc/sched-ebb.c b/gcc/sched-ebb.c
index 2e797b1..8e69215 100644
--- a/gcc/sched-ebb.c
+++ b/gcc/sched-ebb.c
@@ -138,7 +138,6 @@ begin_schedule_ready (rtx insn, rtx last)
&& last != PREV_INSN (insn))
{
edge e;
- edge_iterator ei;
basic_block bb;
/* An obscure special case, where we do have partially dead
@@ -146,9 +145,7 @@ begin_schedule_ready (rtx insn, rtx last)
In this case we can create new basic block. It is
always exactly one basic block last in the sequence. */
- FOR_EACH_EDGE (e, ei, last_bb->succs)
- if (e->flags & EDGE_FALLTHRU)
- break;
+ e = find_fallthru_edge (last_bb->succs);
#ifdef ENABLE_CHECKING
gcc_assert (!e || !(e->flags & EDGE_COMPLEX));
@@ -589,14 +586,11 @@ schedule_ebbs (void)
for (;;)
{
edge e;
- edge_iterator ei;
tail = BB_END (bb);
if (bb->next_bb == EXIT_BLOCK_PTR
|| LABEL_P (BB_HEAD (bb->next_bb)))
break;
- FOR_EACH_EDGE (e, ei, bb->succs)
- if ((e->flags & EDGE_FALLTHRU) != 0)
- break;
+ e = find_fallthru_edge (bb->succs);
if (! e)
break;
if (e->probability <= probability_cutoff)