aboutsummaryrefslogtreecommitdiff
path: root/gcc/emit-rtl.c
diff options
context:
space:
mode:
authorJoern Rennecke <joern.rennecke@embecosm.com>2012-10-20 11:37:27 +0000
committerJoern Rennecke <joern.rennecke@embecosm.com>2012-10-20 11:37:27 +0000
commitc7a2c7fdbaa14d94d157aeaec57a5bc5fabedf44 (patch)
tree9db85ce2d4f2bb9b45abc2d8446bb73af6a30c48 /gcc/emit-rtl.c
parent4e5b25e6a39a9cc4cf89d89955ba5515738953a9 (diff)
2012-10-20 Joern Rennecke <joern.rennecke@embecosm.com>
Richard Sandiford <rdsandiford@googlemail.com> * emit-rtl.c (copy_delay_slot_insn): New function. * emit-rtl.h (copy_delay_slot_insn): Declare. * reorg.c: Include "emit-rtl.h". (steal_delay_list_from_target): Use copy_delay_slot_insn. (fill_slots_from_thread, fill_simple_delay_slots): Likewise. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@192633 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r--gcc/emit-rtl.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index ee6ae226e23..7d7b1dfb0a1 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -1,8 +1,5 @@
/* Emit RTL for the GCC expander.
- Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
- 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
- 2010, 2011
- Free Software Foundation, Inc.
+ Copyright (C) 1987, 1988, 1992-2012 Free Software Foundation, Inc.
This file is part of GCC.
@@ -5378,6 +5375,18 @@ copy_insn (rtx insn)
return copy_insn_1 (insn);
}
+/* Return a copy of INSN that can be used in a SEQUENCE delay slot,
+ on that assumption that INSN itself remains in its original place. */
+
+rtx
+copy_delay_slot_insn (rtx insn)
+{
+ /* Copy INSN with its rtx_code, all its notes, location etc. */
+ insn = copy_rtx (insn);
+ INSN_UID (insn) = cur_insn_uid++;
+ return insn;
+}
+
/* Initialize data structures and variables in this file
before generating rtl for each function. */