From: Richard Kenner Date: Thu, 26 Oct 1995 12:01:21 +0000 (-0400) Subject: (final_scan_insn): When recur for instruction in delay slot... X-Git-Tag: misc/cutover-egcs-0~3486 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c7eee2df1d729c52112e5388f6d4146780ae77d5;p=thirdparty%2Fgcc.git (final_scan_insn): When recur for instruction in delay slot... (final_scan_insn): When recur for instruction in delay slot, add loop around recursive call in case the instruction gets split. From-SVN: r10511 --- diff --git a/gcc/final.c b/gcc/final.c index 8ab4bdc855a0..19b968301c57 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -1686,7 +1686,15 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) } for (i = 1; i < XVECLEN (body, 0); i++) - final_scan_insn (XVECEXP (body, 0, i), file, 0, prescan, 1); + { + rtx insn = XVECEXP (body, 0, i); + rtx next = NEXT_INSN (insn); + /* We loop in case any instruction in a delay slot gets + split. */ + do + insn = final_scan_insn (insn, file, 0, prescan, 1); + while (insn != next); + } #ifdef DBR_OUTPUT_SEQEND DBR_OUTPUT_SEQEND (file); #endif