[PR99829][LRA]: Fixing LRA ICE on arm
commit9c91f8a88b2db50c8faf70786d3cef27b39ac9fc
authorVladimir N. Makarov <vmakarov@redhat.com>
Tue, 19 Mar 2024 20:57:11 +0000 (19 16:57 -0400)
committerVladimir N. Makarov <vmakarov@redhat.com>
Tue, 19 Mar 2024 20:57:56 +0000 (19 16:57 -0400)
treeac8a7c1fb754d630ee3b35c7a283538c71cc60c6
parentc92076aa5345b6a5523b4e193dcc98fe9743b228
[PR99829][LRA]: Fixing LRA ICE on arm

  LRA removed insn setting equivalence to memory whose output was
reloaded. This resulted in writing an uninitiated value to the memory
which triggered assert in LRA code checking the final generated code.
This patch fixes the problem.  Comment in the patch contains more
details about the problem and its solution.

gcc/ChangeLog:

PR target/99829
* lra-constraints.cc (lra_constraints): Prevent removing insn
with reverse equivalence to memory if the memory was reloaded.
gcc/lra-constraints.cc