diff options
author | amylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-10-20 11:37:27 +0000 |
---|---|---|
committer | amylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-10-20 11:37:27 +0000 |
commit | a9abe1f1ecd53c61f02430e9f4c71d79114a0a1c (patch) | |
tree | 9db85ce2d4f2bb9b45abc2d8446bb73af6a30c48 /gcc/emit-rtl.c | |
parent | bc3fb84f86f23c6fedb4a1029fcfdea1e1c1e259 (diff) | |
download | gcc-a9abe1f1ecd53c61f02430e9f4c71d79114a0a1c.tar.gz |
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: svn+ssh://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.c | 17 |
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. */ |