Commit c7789bfb by Jakub Jelinek Committed by Jakub Jelinek

re PR rtl-optimization/38740 (Incorrect delayed branch optimization)

	PR rtl-optimization/38740
	* reorg.c (gate_handle_delay_slots): Avoid dbr scheduling
	if !optimize.
	* config/mips/mips.c (mips_reorg): Likewise.

From-SVN: r143733
parent de081cfd
2009-01-28 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/38740
* reorg.c (gate_handle_delay_slots): Avoid dbr scheduling
if !optimize.
* config/mips/mips.c (mips_reorg): Likewise.
2009-01-28 Richard Guenther <rguenther@suse.de> 2009-01-28 Richard Guenther <rguenther@suse.de>
PR tree-optimization/38926 PR tree-optimization/38926
......
...@@ -13296,7 +13296,7 @@ mips_reorg (void) ...@@ -13296,7 +13296,7 @@ mips_reorg (void)
mips16_lay_out_constants (); mips16_lay_out_constants ();
if (mips_r10k_cache_barrier != R10K_CACHE_BARRIER_NONE) if (mips_r10k_cache_barrier != R10K_CACHE_BARRIER_NONE)
r10k_insert_cache_barriers (); r10k_insert_cache_barriers ();
if (flag_delayed_branch) if (optimize > 0 && flag_delayed_branch)
dbr_schedule (get_insns ()); dbr_schedule (get_insns ());
mips_reorg_process_insns (); mips_reorg_process_insns ();
if (!TARGET_MIPS16 if (!TARGET_MIPS16
......
...@@ -4046,7 +4046,8 @@ static bool ...@@ -4046,7 +4046,8 @@ static bool
gate_handle_delay_slots (void) gate_handle_delay_slots (void)
{ {
#ifdef DELAY_SLOTS #ifdef DELAY_SLOTS
return flag_delayed_branch && !crtl->dbr_scheduled_p; /* At -O0 dataflow info isn't updated after RA. */
return optimize > 0 && flag_delayed_branch && !crtl->dbr_scheduled_p;
#else #else
return 0; return 0;
#endif #endif
......
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