summaryrefslogtreecommitdiff
path: root/gcc/loop.c
diff options
context:
space:
mode:
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-12-31 03:09:48 +0000
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>2001-12-31 03:09:48 +0000
commit4d554fb7e7a28bb47a4ce55e61078ea131f5d12f (patch)
tree01dcd880d385bff6db55c1deeea5f733e3452e9d /gcc/loop.c
parent681d3504a52a7a5c79024c57ff88c621795aaf96 (diff)
downloadgcc-4d554fb7e7a28bb47a4ce55e61078ea131f5d12f.tar.gz
* loop.c (check_dbra_loop): Fix last change: examine both
has_multiple_exit_targets and exit_count. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48404 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/loop.c')
-rw-r--r--gcc/loop.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/loop.c b/gcc/loop.c
index 2069588aed6..0b79dc338a4 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -7977,7 +7977,9 @@ check_dbra_loop (loop, insn_count)
which is reversible. */
int reversible_mem_store = 1;
- if (bl->giv_count == 0 && ! loop_info->has_multiple_exit_targets)
+ if (bl->giv_count == 0
+ && !loop->exit_count
+ && !loop_info->has_multiple_exit_targets)
{
rtx bivreg = regno_reg_rtx[bl->regno];
struct iv_class *blt;