* dce.c (fini_dce): Call df_analyze again just in case
delete_unmarked_insns removed anything.
From-SVN: r201886
+2013-08-20 Alexey Makhalov <makhaloff@gmail.com>
+
+ * dce.c (fini_dce): Call df_analyze again just in case
+ delete_unmarked_insns removed anything.
+
2013-08-20 Teresa Johnson <tejohnson@google.com>
PR rtl-optimizations/57451
bitmap_obstack_release (&dce_blocks_bitmap_obstack);
bitmap_obstack_release (&dce_tmp_bitmap_obstack);
}
+
+ /* If DCE removes the last reference to a hard register, we want
+ to recompute REGS_EVER_LIVE and the global life information.
+
+ Ideally we'd look at REGS_EVER_LIVE before and after and only
+ rerun DF analysis if something changed. */
+ if (!df_in_progress)
+ {
+ df_compute_regs_ever_live (true);
+ df_analyze ();
+ }
}