i386: Mark some of strict_low_part insn constraints earlyclobbered
authorUros Bizjak <ubizjak@gmail.com>
Fri, 14 Jan 2022 15:05:17 +0000 (16:05 +0100)
committerUros Bizjak <ubizjak@gmail.com>
Fri, 14 Jan 2022 15:06:00 +0000 (16:06 +0100)
commitffb7d4b2b76746e4189979f9d27d80be2195308a
treeae834a6004344ddf3af22e40d7a208f9615f5503
parent74abb0beb420830e52dfc6b3ee74e77dae8e31a3
i386: Mark some of strict_low_part insn constraints earlyclobbered

While there is practically impossible that input registers are matched
with in-out register, better mark the output operand of the split alternative
as earlyclobbered - we do output early to the output operand when
the insn is split.

2022-01-14  Uroš Bizjak  <ubizjak@gmail.com>

gcc/ChangeLog:

* config/i386/i386.md (*add<mode>_1_slp"):
Mark alternative 1 output operand earlyclobbered.
(*sub<mode>_1_slp): Ditto.
(*and<mode>_1_slp): Ditto.
(*<code><mode>_1_slp): Ditto.
(*neg<mode>_1_slp): Ditto.
(*one_cmpl<mode>_1_slp): Ditto.
(*ashl<mode>3_1_slp): Ditto.
(*<insn><mode>3_1_slp): Ditto.
(*<insn><mode>3_1_slp): Ditto.
gcc/config/i386/i386.md