gcse.c (gcse_main): Do jump bypassing in CPROP2.

* gcse.c (gcse_main): Do jump bypassing in CPROP2.
	* passes.c (init_optimization_passes): Move pass_jump_bypass
	after loop2.

	* basic-block.h (bb_has_eh_pred): Fix style issue.

From-SVN: r124640
This commit is contained in:
Steven Bosscher 2007-05-12 18:15:38 +00:00
parent 7f6055d052
commit bae8b6b2c3
4 changed files with 12 additions and 3 deletions

View file

@ -1,3 +1,11 @@
2007-05-12 Steven Bosscher <steven@gcc.gnu.org>
* gcse.c (gcse_main): Do jump bypassing in CPROP2.
* passes.c (init_optimization_passes): Move pass_jump_bypass
after loop2.
* basic-block.h (bb_has_eh_pred): Fix style issue.
2007-05-12 Steven Bosscher <steven@gcc.gnu.org>
PR rtl-optimization/31848

View file

@ -1159,7 +1159,8 @@ extern bool rtx_equiv_p (rtx *, rtx, int, struct equiv_info *);
extern bool condjump_equiv_p (struct equiv_info *, bool);
/* Return true when one of the predecessor edges of BB is marked with EDGE_EH. */
static inline bool bb_has_eh_pred (basic_block bb)
static inline bool
bb_has_eh_pred (basic_block bb)
{
edge e;
edge_iterator ei;

View file

@ -789,7 +789,7 @@ gcse_main (rtx f ATTRIBUTE_UNUSED)
alloc_gcse_mem ();
/* This time, go ahead and allow cprop to alter jumps. */
timevar_push (TV_CPROP2);
one_cprop_pass (pass + 1, true, false);
one_cprop_pass (pass + 1, true, true);
timevar_pop (TV_CPROP2);
free_gcse_mem ();

View file

@ -664,7 +664,6 @@ init_optimization_passes (void)
NEXT_PASS (pass_cse);
NEXT_PASS (pass_rtl_fwprop);
NEXT_PASS (pass_gcse);
NEXT_PASS (pass_jump_bypass);
NEXT_PASS (pass_rtl_ifcvt);
NEXT_PASS (pass_tracer);
/* Perform loop optimizations. It might be better to do them a bit
@ -682,6 +681,7 @@ init_optimization_passes (void)
*p = NULL;
}
NEXT_PASS (pass_web);
NEXT_PASS (pass_jump_bypass);
NEXT_PASS (pass_cse2);
NEXT_PASS (pass_rtl_fwprop_addr);
NEXT_PASS (pass_outof_cfg_layout_mode);