RFC: SMS problem with emit_copy_of_insn_after copying REG_NOTEs
Vladimir Yanovsky
volodyan@gmail.com
Sun Dec 31 12:15:00 GMT 2006
Hi,
Sorry for possibly causing confusion. I had tested the patch on my ICE
testcase and bootstrapped for -enable-languages=C, but didn't run the
full bootstrap. Bootstrapping the latest Andrew's patch on ppc-linux
and testing it on SPU.
Vladimir
On 12/30/06, Jan Hubicka <jh@suse.cz> wrote:
> Hi,
> thanks for testing. I've bootstrapped/regtested this variant of patch
> and comitted it as obvious.
>
> Honza
>
> 2006-12-30 Jan Hubicka <jh@suse.cz>
> Vladimir Yanovsky <volodyan@gmail.com>
>
> * emit-rt.c (emit_copy_of_insn_after): Fix bug causing exponential
> amount of copies of INSN_NOTEs list.
>
> Index: emit-rtl.c
> ===================================================================
> --- emit-rtl.c (revision 120274)
> +++ emit-rtl.c (working copy)
> @@ -5297,14 +5297,12 @@ emit_copy_of_insn_after (rtx insn, rtx a
> {
> if (GET_CODE (link) == EXPR_LIST)
> REG_NOTES (new)
> - = copy_insn_1 (gen_rtx_EXPR_LIST (REG_NOTE_KIND (link),
> - XEXP (link, 0),
> - REG_NOTES (new)));
> + = gen_rtx_EXPR_LIST (REG_NOTE_KIND (link),
> + copy_insn_1 (XEXP (link, 0)), REG_NOTES (new));
> else
> REG_NOTES (new)
> - = copy_insn_1 (gen_rtx_INSN_LIST (REG_NOTE_KIND (link),
> - XEXP (link, 0),
> - REG_NOTES (new)));
> + = gen_rtx_INSN_LIST (REG_NOTE_KIND (link),
> + copy_insn_1 (XEXP (link, 0)), REG_NOTES (new));
> }
>
> /* Fix the libcall sequences. */
>
More information about the Gcc-patches
mailing list