]> git.ipfire.org Git - thirdparty/gcc.git/commit
Integrate SLP permute transform into vect_transform_stmt
authorRichard Biener <rguenther@suse.de>
Fri, 12 Sep 2025 11:52:51 +0000 (13:52 +0200)
committerRichard Biener <rguenther@suse.de>
Sun, 14 Sep 2025 09:08:10 +0000 (11:08 +0200)
commit21d1bb1922fa7cd98f2a27d002e48b488e772176
tree69d67c595bbfecb439bf69f56b998d5f5ea15ac8
parent57c97de978332fa5683393b38a2db77b78bf0e2c
Integrate SLP permute transform into vect_transform_stmt

This adds permute_info_type and removes the duplication from
vect_schedule_slp_node.

* tree-vectorizer.h (stmt_vec_info_type::permute_info_type): Add.
(vectorizable_slp_permutation): Declare.
* tree-vect-slp.cc (vectorizable_slp_permutation): Export.
(vect_slp_analyze_node_operations_1): Set permute_info_type
on permute nodes successfully analyzed.
(vect_schedule_slp_node): Dispatch to vect_transform_stmt
for all nodes.
* tree-vect-stmts.cc (vect_transform_stmt): Remove redundant
dump, handle permute_info_type.

* gcc.dg/vect/vect-reduc-chain-2.c: Adjust.
* gcc.dg/vect/vect-reduc-chain-3.c: Likewise.
gcc/testsuite/gcc.dg/vect/vect-reduc-chain-2.c
gcc/testsuite/gcc.dg/vect/vect-reduc-chain-3.c
gcc/tree-vect-slp.cc
gcc/tree-vect-stmts.cc
gcc/tree-vectorizer.h