From: Richard Biener Date: Thu, 25 Jun 2020 11:41:47 +0000 (+0200) Subject: Always use SLP vector defs to determine insertion place X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d2adb79eac663874593a28387db593fb4bb2995f;p=gcc.git Always use SLP vector defs to determine insertion place With the last vectorizable_shift patch we can now always use the SLP vector defs to determine the vectorized stmt insertion place, paving the way for a "verifier" for pending restructuring and BB vectorization of reductions and other live stmts. 2020-06-25 Richard Biener * tree-vect-slp.c (vect_schedule_slp_instance): Always use vector defs to determine insertion place. --- diff --git a/gcc/tree-vect-slp.c b/gcc/tree-vect-slp.c index b2792c76ad2..5883ec58c7a 100644 --- a/gcc/tree-vect-slp.c +++ b/gcc/tree-vect-slp.c @@ -4262,13 +4262,6 @@ vect_schedule_slp_instance (vec_info *vinfo, else if (SLP_TREE_CHILDREN (node).is_empty ()) /* This happens for reduction PHIs. */ si = gsi_for_stmt (vect_find_last_scalar_stmt_in_slp (node)->stmt); - else if (stmt_vec_info first_stmt_info - = vect_find_last_scalar_stmt_in_slp (node)) - /* ??? Shifts by scalars hit us here again, we end up vectorizing - the shift operand but end up using the scalar operand anyway. - This needs to be better reflected in the SLP tree. For now - use the last position if available. */ - si = gsi_for_stmt (first_stmt_info->stmt); else { /* Emit other stmts after the children vectorized defs which is