LRA: Revert "Remove useless move insns"
authorH.J. Lu <hongjiu.lu@intel.com>
Sun, 21 Apr 2019 18:23:00 +0000 (18:23 +0000)
committerH.J. Lu <hjl@gcc.gnu.org>
Sun, 21 Apr 2019 18:23:00 +0000 (11:23 -0700)
commitf94302e90b09bc30d5ba357d4f84aa37f7a75ad1
tree9ddd83f023197d5d210e4a65188cb15843813408
parent6397d8df302d964740dca942445165d4c2a6c0aa
LRA: Revert "Remove useless move insns"

Useless move insn removal was added to LRA just to avoid wasting CPU
cycles on such insn processing afterwards.  Such insns are removed
anyway later in the pass pipeline.  The CPU time savings are tiny but
the removal creates too many problems including PR target/90178.
Vladimir pre-approved the patch to remove the code:

https://gcc.gnu.org/ml/gcc-patches/2019-04/msg00834.html

gcc/

PR target/90178
Revert:
2018-11-21  Uros Bizjak  <ubizjak@gmail.com>

Revert the revert:
2013-10-26  Vladimir Makarov  <vmakarov@redhat.com>

Revert:
2013-10-25  Vladimir Makarov  <vmakarov@redhat.com>

* lra-spills.c (lra_final_code_change): Remove useless move insns.

gcc/testsuite/

PR target/90178
* gcc.target/i386/pr90178.c: New test.

From-SVN: r270484
gcc/ChangeLog
gcc/lra-spills.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr90178.c [new file with mode: 0644]