From 4b73962b7e164ed118806f9c70bc75a4799df467 Mon Sep 17 00:00:00 2001 From: Jan Hubicka Date: Sat, 30 Dec 2006 13:00:45 +0100 Subject: [PATCH] emit-rt.c (emit_copy_of_insn_after): Fix bug causing exponential amount of copies of INSN_NOTEs list. * emit-rt.c (emit_copy_of_insn_after): Fix bug causing exponential amount of copies of INSN_NOTEs list. Co-Authored-By: Vladimir Yanovsky From-SVN: r120283 --- gcc/ChangeLog | 6 ++++++ gcc/emit-rtl.c | 10 ++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b728b00..4c52d7f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2006-12-30 Jan Hubicka + Vladimir Yanovsky + + * emit-rt.c (emit_copy_of_insn_after): Fix bug causing exponential + amount of copies of INSN_NOTEs list. + 2006-12-29 Jan Hubicka * cgraph.c (cgraph_exapnd_queue): Rename to... diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index e63e138..517c1a3 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -5297,14 +5297,12 @@ emit_copy_of_insn_after (rtx insn, rtx after) { 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. */ -- 2.7.4