recog.c (constrain_operands): Initialize which_alternative before no alternatives...
authorRichard Henderson <rth@redhat.com>
Thu, 26 Oct 2000 00:30:55 +0000 (17:30 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Thu, 26 Oct 2000 00:30:55 +0000 (17:30 -0700)
        * recog.c (constrain_operands): Initialize which_alternative
        before no alternatives early exit.

From-SVN: r37065

gcc/ChangeLog
gcc/recog.c

index 3edb9b2bff5555910d887f3d3407556dc8870d48..588ac13231853f6af69dcf1e12521704e33adbd8 100644 (file)
@@ -1,14 +1,13 @@
 2000-10-25  Richard Henderson  <rth@redhat.com>
 
+       * recog.c (constrain_operands): Initialize which_alternative
+       before no alternatives early exit.
+
        * cse.c (find_comparison_args): Check that we can reverse a
        comparison if needed before accepting the substitution.
 
-2000-10-25  Richard Henderson  <rth@redhat.com>
-
        * reload.c (find_reloads_address_part): Kill rtx obstack hackery.
 
-2000-10-25  Richard Henderson  <rth@redhat.com>
-
        * simplify-rtx.c (simplify_relational_operation): Sign extend
        low words before sign extending to high words.
 
index d88ac05aaf94d20bf8d6b08f61fe121635014863..b0010ba9d8fc1f567ed4c21ee8f949ab79946fb8 100644 (file)
@@ -2332,6 +2332,7 @@ constrain_operands (strict)
   struct funny_match funny_match[MAX_RECOG_OPERANDS];
   int funny_match_index;
 
+  which_alternative = 0;
   if (recog_data.n_operands == 0 || recog_data.n_alternatives == 0)
     return 1;
 
@@ -2341,9 +2342,7 @@ constrain_operands (strict)
       matching_operands[c] = -1;
     }
 
-  which_alternative = 0;
-
-  while (which_alternative < recog_data.n_alternatives)
+  do
     {
       register int opno;
       int lose = 0;
@@ -2646,6 +2645,7 @@ constrain_operands (strict)
 
       which_alternative++;
     }
+  while (which_alternative < recog_data.n_alternatives);
 
   which_alternative = -1;
   /* If we are about to reject this, but we are not to test strictly,