From: James E Wilson Date: Wed, 27 Oct 2004 01:36:11 +0000 (+0000) Subject: Fix for PR 18010, copy epilogue unwind info when copying epilogue insns. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0a3d71f54af134bcafea29a8f8021d8bbf24cfb4;p=gcc.git Fix for PR 18010, copy epilogue unwind info when copying epilogue insns. * emit-rtl.c (emit_copy_of_insn_after): Copy RTX_FRAME_RELATED_P. From-SVN: r89624 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 45edb1739a6..38c6bfc5014 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-10-26 James E Wilson + + PR target/18010 + * emit-rtl.c (emit_copy_of_insn_after): Copy RTX_FRAME_RELATED_P. + 2004-10-26 Zack Weinberg * dbxout.c: Include obstack.h. diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index ec7bec39adc..ae4c3eb40c2 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -5548,6 +5548,11 @@ emit_copy_of_insn_after (rtx insn, rtx after) INSN_LOCATOR (new) = INSN_LOCATOR (insn); + /* If the old insn is frame related, then so is the new one. This is + primarily needed for IA-64 unwind info which marks epilogue insns, + which may be duplicated by the basic block reordering code. */ + RTX_FRAME_RELATED_P (new) = RTX_FRAME_RELATED_P (insn); + /* Copy all REG_NOTES except REG_LABEL since mark_jump_label will make them. */ for (link = REG_NOTES (insn); link; link = XEXP (link, 1))