aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@gcc.gnu.org>2003-05-14 15:06:41 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2003-05-14 15:06:41 +0000
commit3ec6c6ee22cf85fa238f99f6e369450f7eba2848 (patch)
tree465614519c138683373755d8c5993938e93145c9
parentc62347f080a0e69a7acfc42f3b874b9e38a23f8a (diff)
downloadgcc-3ec6c6ee22cf85fa238f99f6e369450f7eba2848.zip
gcc-3ec6c6ee22cf85fa238f99f6e369450f7eba2848.tar.gz
gcc-3ec6c6ee22cf85fa238f99f6e369450f7eba2848.tar.bz2
* loop.c (check_dbra_loop): Factor common test.
From-SVN: r66803
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/loop.c10
2 files changed, 11 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 67ee501..f5e7884 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2003-05-14 Nathan Sidwell <nathan@codesourcery.com>
+
+ * loop.c (check_dbra_loop): Factor common test.
+
2003-05-14 Ben Elliston <bje@wasabisystems.com>
* doc/md.texi (Automaton pipeline description): Grammar fixes.
@@ -504,6 +508,7 @@ Mon May 12 11:32:53 CEST 2003 Jan Hubicka <jh@suse.cz>
(s390_function_arg): Likewise.
(s390_va_arg): Likewise
+>>>>>>> 1.17806
2003-05-11 Nathan Sidwell <nathan@codesourcery.com>
* coverage.h (coverage_counter_alloc): New function.
diff --git a/gcc/loop.c b/gcc/loop.c
index b74d6ad..c161bc8 100644
--- a/gcc/loop.c
+++ b/gcc/loop.c
@@ -8274,9 +8274,11 @@ check_dbra_loop (loop, insn_count)
&& REGNO (SET_DEST (set)) == bl->regno)
/* An insn that sets the biv is okay. */
;
- else if ((p == prev_nonnote_insn (prev_nonnote_insn (loop_end))
- || p == prev_nonnote_insn (loop_end))
- && reg_mentioned_p (bivreg, PATTERN (p)))
+ else if (!reg_mentioned_p (bivreg, PATTERN (p)))
+ /* An insn that doesn't mention the biv is okay. */
+ ;
+ else if (p == prev_nonnote_insn (prev_nonnote_insn (loop_end))
+ || p == prev_nonnote_insn (loop_end))
{
/* If either of these insns uses the biv and sets a pseudo
that has more than one usage, then the biv has uses
@@ -8290,7 +8292,7 @@ check_dbra_loop (loop, insn_count)
break;
}
}
- else if (reg_mentioned_p (bivreg, PATTERN (p)))
+ else
{
no_use_except_counting = 0;
break;