[PATCH] vectorizing conditional expressions (PR tree-optimization/65947)

Alan Lawrence alan.lawrence@arm.com
Thu Oct 22 14:18:00 GMT 2015


Just one very small point...

On 19/10/15 09:17, Alan Hayward wrote:

 > -  if (check_reduction
 > -      && (!commutative_tree_code (code) || !associative_tree_code (code)))
 > +  if (check_reduction)
 >      {
 > -      if (dump_enabled_p ())
 > -        report_vect_op (MSG_MISSED_OPTIMIZATION, def_stmt,
 > -			"reduction: not commutative/associative: ");
 > -      return NULL;
 > +      if (code != COND_EXPR
 > +	  && (!commutative_tree_code (code) || !associative_tree_code (code)))
 > +	{
 > +	  if (dump_enabled_p ())
 > +	    report_vect_op (MSG_MISSED_OPTIMIZATION, def_stmt,
 > +			    "reduction: not commutative/associative: ");
 > +	  return NULL;
 > +	}
 > +
 > +      if (code == COND_EXPR)
 > +	*v_reduc_type = COND_REDUCTION;

Wouldn't this be easier written as

if (code == COND_EXPR)
   *v_reduc_type = COND_REDUCTION;
else if (!commutative_tree_code (code) || !associative_tree_code (code))
   {...}

? Your call!

Cheers, Alan



More information about the Gcc-patches mailing list