$NetBSD: patch-ca,v 1.2 2002/03/28 10:11:54 jmc Exp $

--- ../gcc-2.95.3/gcc/loop.c.orig 2001/04/23 11:58:27 1.1.1.2
+++ ../gcc-2.95.3/gcc/loop.c 2001/12/06 18:50:34 1.2
@@ -4103,11 +4103,11 @@
 	         in-between when biv_toal_increment returns nonzero both times
 		 but we test it here in case some day some real cfg analysis
 		 gets used to set always_computable.  */
-	      && ((loop_insn_first_p (bl2->biv->insn, bl->biv->insn)
-		   && no_labels_between_p (bl2->biv->insn, bl->biv->insn))
-		  || (! reg_used_between_p (bl->biv->src_reg, bl->biv->insn,
-					    bl2->biv->insn)
-		      && no_jumps_between_p (bl->biv->insn, bl2->biv->insn)))
+	      && (loop_insn_first_p (bl2->biv->insn, bl->biv->insn)
+		  ? no_labels_between_p (bl2->biv->insn, bl->biv->insn)
+		  : (! reg_used_between_p (bl->biv->src_reg, bl->biv->insn,
+					   bl2->biv->insn)
+		     && no_jumps_between_p (bl->biv->insn, bl2->biv->insn)))
 	      && validate_change (bl->biv->insn,
 				  &SET_SRC (single_set (bl->biv->insn)),
 				  copy_rtx (src), 0))
