PR middle end/18718
authorAlan Modra <amodra@bigpond.net.au>
Fri, 3 Dec 2004 23:02:33 +0000 (23:02 +0000)
committerAlan Modra <amodra@gcc.gnu.org>
Fri, 3 Dec 2004 23:02:33 +0000 (09:32 +1030)
PR middle end/18718
* sched-rgn.c (schedule_region): Don't assume REG_SAVE_NOTEs are
in pairs.
* sched-ebb.c (schedule_ebb): Likewise.

From-SVN: r91702

gcc/ChangeLog
gcc/sched-ebb.c
gcc/sched-rgn.c

index 96c3bafa27bb9d52e18c318093dce05b2d2a8474..19a5b78c453a566b5b6105c968f89b27ad0af05d 100644 (file)
@@ -1,3 +1,10 @@
+2004-12-04  Alan Modra  <amodra@bigpond.net.au>
+
+       PR middle end/18718
+       * sched-rgn.c (schedule_region): Don't assume REG_SAVE_NOTEs are
+       in pairs.
+       * sched-ebb.c (schedule_ebb): Likewise.
+
 2004-12-03  Andreas Schwab  <schwab@suse.de>
 
        * Makefile.in (HOSTHOOKS_DEF_H): Define.
index 4643478b3cb4dbc040c2e4999db10c8c47379098..560faf3620f1c066ea608f64d716d47ef53ebe0f 100644 (file)
@@ -525,11 +525,7 @@ schedule_ebb (rtx head, rtx tail)
 
       for (note = REG_NOTES (head); note; note = XEXP (note, 1))
        if (REG_NOTE_KIND (note) == REG_SAVE_NOTE)
-         {
-           remove_note (head, note);
-           note = XEXP (note, 1);
-           remove_note (head, note);
-         }
+         remove_note (head, note);
     }
 
   /* Remove remaining note insns from the block, save them in
index c478b773b82bd8a019bc59a3f412d2eea43068d3..162576a0c92ec77bd84da9705b820df2822c59d1 100644 (file)
@@ -2324,11 +2324,7 @@ schedule_region (int rgn)
 
          for (note = REG_NOTES (head); note; note = XEXP (note, 1))
            if (REG_NOTE_KIND (note) == REG_SAVE_NOTE)
-             {
-               remove_note (head, note);
-               note = XEXP (note, 1);
-               remove_note (head, note);
-             }
+             remove_note (head, note);
        }
 
       /* Remove remaining note insns from the block, save them in