https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102758
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Ever confirmed|0 |1
Last reconfirmed| |2021-10-15
Status|UNCONFIRMED |NEW
Known to work| |11.2.0
Target Milestone|--- |12.0
Summary|[x86] Failure to use |[12 Regression] Failure to
|registers optimally when |use registers optimally
|swapping between |with return values (2
|(identically represented) |operands related)
|vector types |
Known to fail| |12.0
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
GCC 11.2.0 (and before) produces:
movdqa .LC0(%rip), %xmm0
paddw %xmm1, %xmm0
ret
Which is what you want.
I don't know why trunk changed ...