]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR middle-end/19175 (RTL checking failures on i686-pc-linux-gnu)
authorRoger Sayle <roger@eyesopen.com>
Thu, 30 Dec 2004 20:23:28 +0000 (20:23 +0000)
committerRoger Sayle <sayle@gcc.gnu.org>
Thu, 30 Dec 2004 20:23:28 +0000 (20:23 +0000)
PR middle-end/19175
* loop-unroll.c (expand_bct): Pass the code_label to the function
do_compare_rtx_and_jump, not the label ref.  Clean-up style issues.

From-SVN: r92740

gcc/ChangeLog
gcc/loop-unroll.c

index 8b04dbf5641b018cf09cda4188c5a1fa56204629..07e8173137ec3df555bf3cb85a21473bec2a2450 100644 (file)
@@ -1,3 +1,9 @@
+2004-12-30  Roger Sayle  <roger@eyesopen.com>
+
+       PR middle-end/19175
+       * loop-unroll.c (expand_bct): Pass the code_label to the function
+       do_compare_rtx_and_jump, not the label ref.  Clean-up style issues.
+
 2004-12-27 John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
 
        * vax.c (vax_address_cost, vax_rtx_cost): Correct casts.
index aae175720feacb1ae19cb4f37ea92038b94f6ebe..4852bb2913199011902befd66a82823a8b33259e 100644 (file)
@@ -1269,7 +1269,9 @@ unroll_loop_stupid (struct loops *loops, struct loop *loop)
 /* Expand a bct instruction in a branch and an increment.
    If flag_inc is set, the induction variable does not need to be
    incremented.  */
-void expand_bct (edge e, int flag_inc)
+
+static void
+expand_bct (edge e, int flag_inc)
 {
   rtx bct_insn = BB_END (e->src);
   rtx cmp;
@@ -1278,12 +1280,11 @@ void expand_bct (edge e, int flag_inc)
 
   rtx tgt;
   rtx condition;
-  rtx label;
+  rtx labelref;
   rtx reg;
-  rtx jump;
-  rtx pattern = PATTERN(bct_insn);
+  rtx pattern = PATTERN (bct_insn);
   
-  if (!(is_bct_cond(bct_insn)))
+  if (!is_bct_cond (bct_insn))
     return;
 
   inc = get_var_set_from_bct (bct_insn);
@@ -1299,14 +1300,12 @@ void expand_bct (edge e, int flag_inc)
     }
 
   condition = XEXP (SET_SRC (cmp), 0);
-  label = XEXP (SET_SRC (cmp), 1);
+  labelref = XEXP (SET_SRC (cmp), 1);
 
   do_compare_rtx_and_jump (copy_rtx (reg), XEXP (condition, 1), 
                           GET_CODE (condition), 0,
                           GET_MODE (reg), NULL_RTX, NULL_RTX,
-                          label);
-  jump = get_last_insn ();
-  JUMP_LABEL (jump) = label;
+                          XEXP (labelref, 0));
   seq = get_insns ();
   end_sequence ();
   emit_insn_after (seq, bct_insn);