flow.c (delete_block): Call set_last_insn if we end up deleting the last insn in...
authorJeffrey A Law <law@cygnus.com>
Tue, 1 Dec 1998 23:19:12 +0000 (23:19 +0000)
committerJeff Law <law@gcc.gnu.org>
Tue, 1 Dec 1998 23:19:12 +0000 (16:19 -0700)
* flow.c (delete_block): Call set_last_insn if we end up deleting the
last insn in the rtl chain.

From-SVN: r24052

gcc/ChangeLog
gcc/flow.c

index 8f571a34ff1e190557ed622fbd7556e48b3e6e47..9b51c34956295eb48d3961143904e7535b3d939b 100644 (file)
@@ -59,6 +59,9 @@ Tue Dec  1 15:03:30 1998  Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
        
 Tue Dec  1 15:20:44 1998  Jeffrey A Law  (law@cygnus.com)
 
+       * flow.c (delete_block): Call set_last_insn if we end up deleting the
+       last insn in the rtl chain.
+
        * reload1.c (reload): Do not set reload_completed or split insns
        here.  Instead...
        * toplev.c (rest_of_compilation): Set reload_completed after
index 510c011677f504eecc72bd5567c126886649564f..825bf22294b8248bdf4f0f3595939d9de0d9d173 100644 (file)
@@ -1018,12 +1018,16 @@ delete_block (i)
       NEXT_INSN (PREV_INSN (basic_block_head[i])) = insn;
       if (insn != 0)
        PREV_INSN (insn) = PREV_INSN (basic_block_head[i]);
+      else
+       set_last_insn (PREV_INSN (basic_block_head[i]));
     }
   else
     {
       NEXT_INSN (PREV_INSN (basic_block_head[i])) = kept_head;
       if (insn != 0)
        PREV_INSN (insn) = kept_tail;
+      else
+       set_last_insn (kept_tail);
 
       PREV_INSN (kept_head) = PREV_INSN (basic_block_head[i]);
       NEXT_INSN (kept_tail) = insn;