re PR rtl-optimization/87507 (IRA unnecessarily uses non-volatile registers during...
authorPeter Bergner <bergner@linux.ibm.com>
Wed, 14 Nov 2018 02:17:35 +0000 (02:17 +0000)
committerPeter Bergner <bergner@gcc.gnu.org>
Wed, 14 Nov 2018 02:17:35 +0000 (20:17 -0600)
commit38e601118ca88adf0a472750b0da83f0ef1798a7
tree0fae6ff41c29662d2e5d7dc1d94845b3bc9a4456
parent72931dea2b1c27ef70f8b5dce3b12a0db7f44fa4
re PR rtl-optimization/87507 (IRA unnecessarily uses non-volatile registers during register assignment)

gcc/
PR rtl-optimization/87507
* lower-subreg.c (operand_for_swap_move_operator): New function.
(simple_move): Strip simple operators.
(find_pseudo_copy): Likewise.
(resolve_operand_for_swap_move_operator): New function.
(resolve_simple_move): Strip simple operators and swap operands.

gcc/testsuite/
PR rtl-optimization/87507
* gcc.target/powerpc/pr87507.c: New test.
* gcc.target/powerpc/pr68805.c: Update expected results.

From-SVN: r266097
gcc/ChangeLog
gcc/lower-subreg.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/powerpc/pr68805.c
gcc/testsuite/gcc.target/powerpc/pr87507.c [new file with mode: 0644]