From: Richard Kenner Date: Mon, 12 Oct 1992 20:55:45 +0000 (-0400) Subject: (try_combine): Save DEST of NI2PAT before calling recog_for_combine, X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=472fbdd1ca531088684ce533b08f65bea09b84ee;p=gcc.git (try_combine): Save DEST of NI2PAT before calling recog_for_combine, which might make it a PARALLEL. From-SVN: r2411 --- diff --git a/gcc/combine.c b/gcc/combine.c index 9dd969ffaca..5476599d405 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -1676,11 +1676,13 @@ try_combine (i3, i2, i1) && ! find_reg_note (i3, REG_UNUSED, SET_DEST (XVECEXP (newpat, 0, 0)))) { + rtx ni2dest; + newi2pat = XVECEXP (newpat, 0, 0); + ni2dest = SET_DEST (XVECEXP (newpat, 0, 0)); newpat = XVECEXP (newpat, 0, 1); SUBST (SET_SRC (newpat), - gen_lowpart_for_combine (GET_MODE (SET_SRC (newpat)), - SET_DEST (newi2pat))); + gen_lowpart_for_combine (GET_MODE (SET_SRC (newpat)), ni2dest)); i2_code_number = recog_for_combine (&newi2pat, i2, &new_i2_notes); if (i2_code_number >= 0) insn_code_number = recog_for_combine (&newpat, i3, &new_i3_notes); @@ -1717,7 +1719,7 @@ try_combine (i3, i2, i1) insn = NEXT_INSN (insn)) { if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' - && reg_referenced_p (SET_DEST (newi2pat), PATTERN (insn))) + && reg_referenced_p (ni2dest, PATTERN (insn))) { for (link = LOG_LINKS (insn); link; link = XEXP (link, 1))