Hi, thanks for testing. I've bootstrapped/regtested this variant of patch and comitted it as obvious.
Honza 2006-12-30 Jan Hubicka <[EMAIL PROTECTED]> Vladimir Yanovsky <[EMAIL PROTECTED]> * 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. */