]> git.ipfire.org Git - thirdparty/gcc.git/commit
This transitions vect_model_simple_cost to SLP only
authorRichard Biener <rguenther@suse.de>
Mon, 12 May 2025 13:02:42 +0000 (15:02 +0200)
committerRichard Biener <rguenther@suse.de>
Wed, 14 May 2025 13:42:46 +0000 (15:42 +0200)
commit8ea0d98fc9a87e8f6e82cf431419871eeeb35baa
treed5a76930253a6fd394bb0b4bb8b809372388d19f
parent871099ae65a4f528496c7550331364866f9806bb
This transitions vect_model_simple_cost to SLP only

As part of the vector cost API cleanup this transitions
vect_model_simple_cost to only record costs with SLP node.
For this to work the patch adds an overload to record_stmt_cost
only passing in the SLP node.

The vect_prologue_cost_for_slp adjustment is one spot that
needs an eye with regard to re-doing the whole thing.

* tree-vectorizer.h (record_stmt_cost): Add overload with
only SLP node and no vector type.
* tree-vect-stmts.cc (record_stmt_cost): Use
SLP_TREE_REPRESENTATIVE for stmt_vec_info.
(vect_model_simple_cost): Do not get stmt_vec_info argument
and adjust.
(vectorizable_call): Adjust.
(vectorizable_simd_clone_call): Likewise.
(vectorizable_conversion): Likewise.
(vectorizable_assignment): Likewise.
(vectorizable_shift): Likewise.
(vectorizable_operation): Likewise.
(vectorizable_condition): Likewise.
(vectorizable_comparison_1): Likewise.
* tree-vect-slp.cc (vect_prologue_cost_for_slp): Use
full-blown record_stmt_cost.
gcc/tree-vect-slp.cc
gcc/tree-vect-stmts.cc
gcc/tree-vectorizer.h