tree-optimization/112366 - remove assert for failed live lane code gen

The following removes a bogus assert constraining the uses that
could appear when a built from scalar defs SLP node constrains
code generation in a way so earlier uses of the vector CTOR
components fail to get vectorized.  We can't really constrain the
operation such use appears in.

	PR tree-optimization/112366
	* tree-vect-loop.cc (vectorizable_live_operation): Remove
	assert.
This commit is contained in:
Richard Biener 2023-11-03 11:31:37 +01:00
parent 3881d010dc
commit c0cf9b7857

View file

@ -10778,7 +10778,7 @@ vectorizable_live_operation (vec_info *vinfo, stmt_vec_info stmt_info,
|| !PURE_SLP_STMT (vect_stmt_to_vectorize (use_stmt_info))))
{
/* ??? This can happen when the live lane ends up being
used in a vector construction code-generated by an
rooted in a vector construction code-generated by an
external SLP node (and code-generation for that already
happened). See gcc.dg/vect/bb-slp-47.c.
Doing this is what would happen if that vector CTOR
@ -10791,11 +10791,6 @@ vectorizable_live_operation (vec_info *vinfo, stmt_vec_info stmt_info,
&& !vect_stmt_dominates_stmt_p (SSA_NAME_DEF_STMT (new_tree),
use_stmt))
{
enum tree_code code = gimple_assign_rhs_code (use_stmt);
gcc_checking_assert (code == SSA_NAME
|| code == CONSTRUCTOR
|| code == VIEW_CONVERT_EXPR
|| CONVERT_EXPR_CODE_P (code));
if (dump_enabled_p ())
dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,
"Using original scalar computation for "