2015-05-13 Richard Biener <rguenther@suse.de>
PR tree-optimization/66129
* tree-vect-slp.c (vect_build_slp_tree): Make sure all ops are
commutative.
(vect_schedule_slp_instance): Fix typo.
From-SVN: r223164
+2015-05-13 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/66129
+ * tree-vect-slp.c (vect_build_slp_tree): Make sure all ops are
+ commutative.
+ (vect_schedule_slp_instance): Fix typo.
+
2015-05-13 David Malcolm <dmalcolm@redhat.com>
* common.opt (fdump-internal-locations): New option.
&& oprnds_info[1]->first_dt == vect_internal_def
&& is_gimple_assign (stmt)
&& commutative_tree_code (gimple_assign_rhs_code (stmt))
+ && !SLP_TREE_TWO_OPERATORS (*node)
/* Do so only if the number of not successful permutes was nor more
than a cut-ff as re-trying the recursive match on
possibly each level of the tree would expose exponential
tree *melts = XALLOCAVEC (tree, TYPE_VECTOR_SUBPARTS (vectype));
for (l = 0; l < TYPE_VECTOR_SUBPARTS (vectype); ++l)
{
- if (k > group_size)
+ if (k >= group_size)
k = 0;
melts[l] = build_int_cst
(meltype, mask[k++] * TYPE_VECTOR_SUBPARTS (vectype) + l);