diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2011-06-27 12:59:56 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2011-06-27 12:59:56 +0000 |
commit | 9242213f86f6e3e4703b4fb84065608fb5a03985 (patch) | |
tree | e9f3364a8b586a028e3fdb52a73ee68e76297d9c /gcc/reorg.c | |
parent | db8b22ef4925f80ce5cabb585852896548f78c7e (diff) | |
download | gcc-9242213f86f6e3e4703b4fb84065608fb5a03985.zip gcc-9242213f86f6e3e4703b4fb84065608fb5a03985.tar.gz gcc-9242213f86f6e3e4703b4fb84065608fb5a03985.tar.bz2 |
reorg.c (fill_simple_delay_slots): Use stop_search_p to stop the forward scan as well.
* reorg.c (fill_simple_delay_slots): Use stop_search_p to stop the
forward scan as well.
From-SVN: r175524
Diffstat (limited to 'gcc/reorg.c')
-rw-r--r-- | gcc/reorg.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/gcc/reorg.c b/gcc/reorg.c index 28b6c7d..4df9105 100644 --- a/gcc/reorg.c +++ b/gcc/reorg.c @@ -2152,7 +2152,7 @@ fill_simple_delay_slots (int non_jumps_p) /* This must be an INSN or CALL_INSN. */ pat = PATTERN (trial); - /* USE and CLOBBER at this level was just for flow; ignore it. */ + /* Stand-alone USE and CLOBBER are just for flow. */ if (GET_CODE (pat) == USE || GET_CODE (pat) == CLOBBER) continue; @@ -2271,15 +2271,12 @@ fill_simple_delay_slots (int non_jumps_p) } if (target == 0) - for (trial = next_nonnote_insn (insn); trial; trial = next_trial) + for (trial = next_nonnote_insn (insn); !stop_search_p (trial, 1); + trial = next_trial) { next_trial = next_nonnote_insn (trial); - if (LABEL_P (trial) - || BARRIER_P (trial)) - break; - - /* We must have an INSN, JUMP_INSN, or CALL_INSN. */ + /* This must be an INSN or CALL_INSN. */ pat = PATTERN (trial); /* Stand-alone USE and CLOBBER are just for flow. */ @@ -2293,7 +2290,7 @@ fill_simple_delay_slots (int non_jumps_p) else trial_delay = trial; - /* Stop our search when seeing an unconditional jump. */ + /* Stop our search when seeing a jump. */ if (JUMP_P (trial_delay)) break; |