haifa-sched.c (schedule_insns): Don't recompute reg info after reload.
authorRichard Henderson <rth@cygnus.com>
Fri, 28 Jan 2000 21:54:39 +0000 (13:54 -0800)
committerRichard Henderson <rth@gcc.gnu.org>
Fri, 28 Jan 2000 21:54:39 +0000 (13:54 -0800)
        * haifa-sched.c (schedule_insns): Don't recompute reg info
        after reload.

From-SVN: r31675

gcc/ChangeLog
gcc/haifa-sched.c

index c39ab7fd81907b90e649cf56fbe139e73020f06a..c1e8282c56751c4974d9625f6eb0fcd35aab9026 100644 (file)
@@ -4,6 +4,9 @@
        * flow.c (mark_regs_live_at_end): Likewise.  Force BLKmode
        FUNCTION_VALUE result to DECL_RESULT's mode.
 
+       * haifa-sched.c (schedule_insns): Don't recompute reg info
+       after reload.
+
 2000-01-28  Zack Weinberg  <zack@wolery.cumb.org>
 
        * configure.in: Make --enable-cpplib the default.
index b2ff9d6dbf52669aa0bb642ae99f88fc284ffb86..2c9adf2815b717d5bd8797e1770a341b4793d90c 100644 (file)
@@ -6975,8 +6975,11 @@ schedule_insns (dump_file)
        SET_BIT (blocks, rgn_bb_table[RGN_BLOCKS (rgn)]);
        RESET_BIT (large_region_blocks, rgn_bb_table[RGN_BLOCKS (rgn)]);
 
+       /* Don't update reg info after reload, since that affects
+          regs_ever_live, which should not change after reload.  */
        update_life_info (blocks, UPDATE_LIFE_LOCAL,
-                         PROP_DEATH_NOTES | PROP_REG_INFO);
+                         (reload_completed ? PROP_DEATH_NOTES
+                          : PROP_DEATH_NOTES | PROP_REG_INFO));
 
        /* In the single block case, the count of registers that died should
           not have changed during the schedule.  */