]> git.ipfire.org Git - thirdparty/gcc.git/commit
Allow single-lane SLP in-order reductions
authorRichard Biener <rguenther@suse.de>
Tue, 5 Mar 2024 14:46:24 +0000 (15:46 +0100)
committerRichard Biener <rguenther@suse.de>
Thu, 6 Jun 2024 06:55:56 +0000 (08:55 +0200)
commit4653b682ef161c3c2fc7bf8462b8f9206a1349e6
tree8bd1633b4c4690d3520b977bbe5822533b12f362
parent2ee41ef76a99ef5a8b62b351e2c01dad93f51b18
Allow single-lane SLP in-order reductions

The single-lane case isn't different from non-SLP, no re-association
implied.  But the transform stage cannot handle a conditional reduction
op which isn't checked during analysis - this makes it work, exercised
with a single-lane non-reduction-chain by gcc.target/i386/pr112464.c

* tree-vect-loop.cc (vectorizable_reduction): Allow
single-lane SLP in-order reductions.
(vectorize_fold_left_reduction): Handle SLP reduction with
conditional reduction op.
gcc/tree-vect-loop.cc