https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119902
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
URL| |https://gcc.gnu.org/piperma
| |il/gcc-patches/2025-May/683
| |460.html
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
It's a bit complicated if you consider sth like
for (int i = start; i < end; ++i)
{
auto tem = off[i];
a[tem] = a[i] < 0 ? a[i] : 0;
b[i] = tem;
}
On the vectorizer side we'd ideally expand the SLP tree during scatter
analysis and expose the operations in the SLP tree and have a SLP
tree optimization phase merge the vector load and element extract.
It might be possible to handle this in x86 costing in a simplistic way
in case the offset operand of the scatter is a load. But then the
backend currently gets individual sub-operations but not the overall
operation. I had some patch to group costs, but that didn't get
overall positive reception. See URL.