OSDN Git Service

* reorg.c (find_end_label): Update unfilled_slots if the return
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 15 Mar 1993 03:53:37 +0000 (03:53 +0000)
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 15 Mar 1993 03:53:37 +0000 (03:53 +0000)
insn we make has a delay slot.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@3736 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/reorg.c

index 96aa371..a2d5db8 100644 (file)
@@ -727,8 +727,12 @@ find_end_label ()
 #ifdef HAVE_return
       if (HAVE_return)
        {
-         emit_jump_insn (gen_return ());
+         /* The return we make may have delay slots too.  */
+         rtx insn = gen_return();
+         emit_jump_insn (insn);
          emit_barrier ();
+          if (num_delay_slots (insn) > 0)
+           obstack_ptr_grow (&unfilled_slots_obstack, insn);
        }
 #endif
     }