This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] PR20648


On Tue, Mar 29, 2005 at 03:20:37PM +0200, Steven Bosscher wrote:
> +      if (computed_jump_p (BB_END (bb))
> +	  && !(EDGE_PRED (bb, 0)->flags & EDGE_ABNORMAL)
> +	  && (single_pred_p (bb)
> +	      || !(EDGE_PRED (bb, 1)->flags & EDGE_ABNORMAL)))

I'd prefer that you check all incoming edges, not just two.
Something like

	if (!computed_jump_p (BB_END (bb))
	  continue;

	all_flags = 0;
	FOR_EACH_EDGE (e, iter, bb->preds)
	  all_flags |= e->flags;
	if (all_flags & EDGE_COMPLEX)
	  continue;


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]