> I tried -mmax-vectorization as suggested,
> but it still affects VF selection for ordered FP reductions.  For
> example, _Float16 size-8 picks VF=4 with UF=2 instead of VF=8,
> changing the vfredosum/vfwredosum counts.  Could you advise
> whether we should accept the changed instruction counts with
> -mmax-vectorization, or keep -mrvv-vector-bits=zvl -fno-vect-cost-model
> as in v2 to preserve the original expectations?

Hmm.  Can you check a small before after example with costs?
The behavior seems a bit surprising without more context.

> +/* Return true if STMT_INFO or NODE represents a reduction operation.  */
> +
> +static bool
> +is_reduction (stmt_vec_info stmt_info, slp_tree node)
> +{
> +  return (stmt_info && vect_is_reduction (stmt_info))
> +      || (node && vect_is_reduction (node));
> +}

I think just node should be sufficient nowadays.  Is there a case where we have 
a stmt_info but no node?

The rest looks good to me.

-- 
Regards
 Robin

Reply via email to