On 08/12/2016 12:38 PM, Segher Boessenkool wrote:
Hi!
In the PR we have a PARALLEL of a move and a compare (a "mr." instruction).
The compare is dead, so single_set on it returns just the move. Then,
simple_move_p returns true; but the instruction does need reloads in this
case. This patch solves this by making simple_move_p return false for
every multiple_sets instruction.
Bootstrapped and regression checked on powerpc64-linux (-m64,-m32).
Is this okay for trunk?
Segher
2016-08-12 Segher Boessenkool <seg...@kernel.crashing.org>
PR rtl-optimization/73650
* lra-constraints.c (simple_move_p): If the insn is multiple_sets
it is not a simple move.
OK.
Though I do wonder if it would be advantageous to try and rewrite such
insns.
jeff