]> git.ipfire.org Git - thirdparty/gcc.git/commit
TLC to vect_check_store_rhs and vect_slp_child_index_for_operand
authorRichard Biener <rguenther@suse.de>
Wed, 8 Nov 2023 14:25:51 +0000 (15:25 +0100)
committerRichard Biener <rguenther@suse.de>
Wed, 8 Nov 2023 15:35:37 +0000 (16:35 +0100)
commit38168bb69f8ed2b5d3e2e66a3813435230f83293
tree43717cd907c3746004459491e96d052be6eb50a9
parentc49e0c57b22e68e1aa89204f300dc5d61b42d812
TLC to vect_check_store_rhs and vect_slp_child_index_for_operand

This prepares us for the SLP of scatters.  We have to tell
vect_slp_child_index_for_operand whether we are dealing with
a scatter/gather stmt so this adds an argument similar to
the one we have for vect_get_operand_map.  This also refactors
vect_check_store_rhs to get the actual rhs and the associated
SLP node instead of leaving that to the caller.

* tree-vectorizer.h (vect_slp_child_index_for_operand):
Add gatherscatter_p argument.
* tree-vect-slp.cc (vect_slp_child_index_for_operand): Likewise.
Pass it on.
* tree-vect-stmts.cc (vect_check_store_rhs): Turn the rhs
argument into an output, also output the SLP node associated
with it.
(vectorizable_simd_clone_call): Adjust.
(vectorizable_store): Likewise.
(vectorizable_load): Likewise.
gcc/tree-vect-slp.cc
gcc/tree-vect-stmts.cc
gcc/tree-vectorizer.h