diff options
author | Bernd Schmidt <bernd.schmidt@analog.com> | 2009-04-29 15:40:06 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2009-04-29 15:40:06 +0000 |
commit | 4e5d521bb552991496445f0303ef84a95f67ba41 (patch) | |
tree | ef1a1a1c9242c17f4efd56fa3c8c721fe3e70cda | |
parent | 70b70ce8ca44e0be23f7d0d455bd5eb96b4d8bdc (diff) | |
download | gcc-4e5d521bb552991496445f0303ef84a95f67ba41.zip gcc-4e5d521bb552991496445f0303ef84a95f67ba41.tar.gz gcc-4e5d521bb552991496445f0303ef84a95f67ba41.tar.bz2 |
bfin.c (bfin_optimize_loop): When looking for the last insn before the loop_end instruction...
* config/bfin/bfin.c (bfin_optimize_loop): When looking for the last
insn before the loop_end instruction, don't look past labels.
From-SVN: r146980
-rw-r--r-- | gcc/ChangeLog | 3 | ||||
-rw-r--r-- | gcc/config/bfin/bfin.c | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8f8e05d..a2d280f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -3,6 +3,9 @@ * config/bfin/bfin.c (bfin_optimize_loop): If we need a scratch reg, scan backwards to try to find a constant to initialize it. + * config/bfin/bfin.c (bfin_optimize_loop): When looking for the last + insn before the loop_end instruction, don't look past labels. + 2009-04-29 Richard Guenther <rguenther@suse.de> PR middle-end/39937 diff --git a/gcc/config/bfin/bfin.c b/gcc/config/bfin/bfin.c index 0808522..63f60e1 100644 --- a/gcc/config/bfin/bfin.c +++ b/gcc/config/bfin/bfin.c @@ -4012,6 +4012,7 @@ bfin_optimize_loop (loop_info loop) break; if (single_pred_p (bb) + && single_pred_edge (bb)->flags & EDGE_FALLTHRU && single_pred (bb) != ENTRY_BLOCK_PTR) { bb = single_pred (bb); |