From 0a3d71f54af134bcafea29a8f8021d8bbf24cfb4 Mon Sep 17 00:00:00 2001 From: James E Wilson Date: Wed, 27 Oct 2004 01:36:11 +0000 Subject: [PATCH] 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 --- gcc/ChangeLog | 5 +++++ gcc/emit-rtl.c | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 45edb1739a66..38c6bfc50148 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 ec7bec39adcc..ae4c3eb40c26 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)) -- 2.39.2