https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117957

--- Comment #9 from Hongtao Liu <liuhongt at gcc dot gnu.org> ---
The issue is gone on current trunk.


0 1 times scalar_store costs 12 in body
_3 1 times scalar_store costs 12 in body
0 1 times unaligned_store (misalign -1) costs 12 in body
node 0x1f168d88 1 times vec_construct costs 16 in prologue
/cefs/ea/ea0a492c3e98569fde2891af_gcc-trunk-20260126/include/c++/16.0.1/bits/stl_construct.h:110:9:
note: Cost model analysis for part in loop 1:
  Vector cost: 28
  Scalar cost: 24

It's not vectorized any more, not sure which commit "fix" the issue.

On the other hand, for vectorization of two integers, considering that scalar
integers may have more parallelism potential, as well as integer memory
renaming, we might add some penalty to vectorization (divide scalar cost by 2
or multiply vector cost by 2?)

Reply via email to