PR target/105930: Split *xordi3_doubleword after reload on x86.
authorRoger Sayle <roger@nextmovesoftware.com>
Sat, 9 Jul 2022 11:38:12 +0000 (12:38 +0100)
committerRoger Sayle <roger@nextmovesoftware.com>
Sat, 9 Jul 2022 11:38:12 +0000 (12:38 +0100)
commit3ce205f62dea251482806d3efce992134c5677cd
tree9876e8b9feea71e21edfcba8d3e1d8b447b9274c
parent3fbb94b3a4ac9fa35f0a3b1b5e69ab0d6924c5bf
PR target/105930: Split *xordi3_doubleword after reload on x86.

This is a backport of the fix for PR target/105930 from mainline to the
gcc12 release branch.

2022-07-09  Roger Sayle  <roger@nextmovesoftware.com>
    Uroš Bizjak  <ubizjak@gmail.com>

gcc/ChangeLog
PR target/105930
* config/i386/i386.md (*<any_or>di3_doubleword): Split after
reload.  Use rtx_equal_p to avoid creating memory-to-memory moves,
and emit NOTE_INSN_DELETED if operand[2] is zero (i.e. with -O0).
gcc/config/i386/i386.md