From: Richard Kenner Date: Mon, 23 Sep 1996 20:15:26 +0000 (-0400) Subject: (check_dbra_loop): Don't assume label must be second part of X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=3c2f289c1ae0c7d3cee1ba0e2a2bca2b5736786e;p=gcc.git (check_dbra_loop): Don't assume label must be second part of if_then_else in condjump. From-SVN: r12784 --- diff --git a/gcc/loop.c b/gcc/loop.c index b3c49a4dd03..09ad338f14e 100644 --- a/gcc/loop.c +++ b/gcc/loop.c @@ -6028,6 +6028,8 @@ check_dbra_loop (loop_end, insn_count, loop_start) /* Save some info needed to produce the new insns. */ reg = bl->biv->dest_reg; jump_label = XEXP (SET_SRC (PATTERN (PREV_INSN (loop_end))), 1); + if (jump_label == pc_rtx) + jump_label = XEXP (SET_SRC (PATTERN (PREV_INSN (loop_end))), 2); new_add_val = GEN_INT (- INTVAL (bl->biv->add_val)); final_value = XEXP (comparison, 1);