The following removes the ability to switch back to non SLP-only operation of the vectorizer - a requirement to start cleaning out non-SLP paths without risk of regressing that case.
* params.opt (--param=vect-force-slp): Remove. * doc/invoke.texi (--param=vect-force-slp): Likewise. * tree-vect-loop.cc (vect_analyze_loop_2): Assume param_vect_force_slp is 1. * tree-vect-stmts.cc (vect_analyze_stmt): Likewise. --- gcc/doc/invoke.texi | 3 --- gcc/params.opt | 4 ---- gcc/tree-vect-loop.cc | 2 +- gcc/tree-vect-stmts.cc | 2 +- 4 files changed, 2 insertions(+), 9 deletions(-) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index a040d65af0e..7ec2498a12d 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -17171,9 +17171,6 @@ this parameter. The default value of this parameter is 50. @item vect-induction-float Enable loop vectorization of floating point inductions. -@item vect-force-slp -Force the use of SLP when vectorizing, fail if not possible. - @item vrp-block-limit Maximum number of basic blocks before VRP switches to a lower memory algorithm. diff --git a/gcc/params.opt b/gcc/params.opt index 422d082b355..748272c9fb9 100644 --- a/gcc/params.opt +++ b/gcc/params.opt @@ -1230,10 +1230,6 @@ The maximum factor which the loop vectorizer applies to the cost of statements i Common Joined UInteger Var(param_vect_induction_float) Init(1) IntegerRange(0, 1) Param Optimization Enable loop vectorization of floating point inductions. --param=vect-force-slp= -Common Joined UInteger Var(param_vect_force_slp) Init(1) IntegerRange(0, 1) Param Optimization -Force the use of SLP when vectorizing, fail if not possible. - -param=vrp-block-limit= Common Joined UInteger Var(param_vrp_block_limit) Init(150000) Optimization Param Maximum number of basic blocks before VRP switches to a fast model with less memory requirements. diff --git a/gcc/tree-vect-loop.cc b/gcc/tree-vect-loop.cc index 9413dcef702..792231e5cf6 100644 --- a/gcc/tree-vect-loop.cc +++ b/gcc/tree-vect-loop.cc @@ -2928,7 +2928,7 @@ start_over: /* When we arrive here with SLP disabled and we are supposed to use SLP for everything fail vectorization. */ - if (!slp && param_vect_force_slp) + if (!slp) return opt_result::failure_at (vect_location, "may need non-SLP handling\n"); diff --git a/gcc/tree-vect-stmts.cc b/gcc/tree-vect-stmts.cc index 7f874354e75..5a1ab7e0e26 100644 --- a/gcc/tree-vect-stmts.cc +++ b/gcc/tree-vect-stmts.cc @@ -14006,7 +14006,7 @@ vect_analyze_stmt (vec_info *vinfo, /* When we arrive here with a non-SLP statement and we are supposed to use SLP for everything fail vectorization. */ - if (!node && param_vect_force_slp) + if (!node) return opt_result::failure_at (stmt_info->stmt, "needs non-SLP handling\n"); -- 2.43.0