diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1997-01-03 07:59:13 -0500 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1997-01-03 07:59:13 -0500 |
commit | a7ad699e3d7d831cc16bda7cbce61e74a93b3cfc (patch) | |
tree | 0285e0c207e8c43e55fdc273563caefa340f2b2c /gcc | |
parent | 1de9b9763f5ec5897c4954c831c7320607a56410 (diff) | |
download | gcc-a7ad699e3d7d831cc16bda7cbce61e74a93b3cfc.zip gcc-a7ad699e3d7d831cc16bda7cbce61e74a93b3cfc.tar.gz gcc-a7ad699e3d7d831cc16bda7cbce61e74a93b3cfc.tar.bz2 |
(fill_slots_from_thread): Skip moved insn in all three cases.
From-SVN: r13355
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/reorg.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/gcc/reorg.c b/gcc/reorg.c index 637830b..8f08afb 100644 --- a/gcc/reorg.c +++ b/gcc/reorg.c @@ -1,5 +1,5 @@ /* Perform instruction reorganizations for delay slot filling. - Copyright (C) 1992, 1993, 1994, 1995, 1996 Free Software Foundation, Inc. + Copyright (C) 1992, 93, 94, 95, 96, 1997 Free Software Foundation, Inc. Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu). Hacked by Michael Tiemann (tiemann@cygnus.com). @@ -3594,6 +3594,12 @@ fill_slots_from_thread (insn, condition, thread, opposite_thread, likely, if (own_thread) { update_block (trial, thread); + if (trial == thread) + { + thread = next_active_insn (thread); + if (new_thread == trial) + new_thread = thread; + } delete_insn (trial); } else @@ -3745,6 +3751,12 @@ fill_slots_from_thread (insn, condition, thread, opposite_thread, likely, if (own_thread) { update_block (trial, thread); + if (trial == thread) + { + thread = next_active_insn (thread); + if (new_thread == trial) + new_thread = thread; + } delete_insn (trial); } else |