Commit a046136a by Alexey Makhalov Committed by Jeff Law

dce.c (fini_dce): Call df_analyze again just in case delete_unmarked_insns removed anything.

       * dce.c (fini_dce): Call df_analyze again just in case
       delete_unmarked_insns removed anything.

From-SVN: r201886
parent bf7a6c1c
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
......
......@@ -745,6 +745,17 @@ fini_dce (bool fast)
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 ();
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment