diff options
author | Richard Biener <rguenther@suse.de> | 2023-06-26 12:51:37 +0200 |
---|---|---|
committer | Richard Biener <rguenther@suse.de> | 2023-06-26 14:14:54 +0200 |
commit | 53d6f57c1b20c6da52aefce737fb7d5263686ba3 (patch) | |
tree | ea464de31dd3bd20324ceb81ea7dd6aa7aa9881d /libjava/java/nio/DoubleBufferImpl.h | |
parent | a024176a97b0176f526862836c33e283b8db4197 (diff) | |
download | gcc-53d6f57c1b20c6da52aefce737fb7d5263686ba3.zip gcc-53d6f57c1b20c6da52aefce737fb7d5263686ba3.tar.gz gcc-53d6f57c1b20c6da52aefce737fb7d5263686ba3.tar.bz2 |
tree-optimization/110381 - preserve SLP permutation with in-order reductions
The following fixes a bug that manifests itself during fold-left
reduction transform in picking not the last scalar def to replace
and thus double-counting some elements. But the underlying issue
is that we merge a load permutation into the in-order reduction
which is of course wrong.
Now, reduction analysis has not yet been performend when optimizing
permutations so we have to resort to check that ourselves.
PR tree-optimization/110381
* tree-vect-slp.cc (vect_optimize_slp_pass::start_choosing_layouts):
Materialize permutes before fold-left reductions.
* gcc.dg/vect/pr110381.c: New testcase.
Diffstat (limited to 'libjava/java/nio/DoubleBufferImpl.h')
0 files changed, 0 insertions, 0 deletions