Richard Sandiford wrote:
After the discussions Richard Earnshaw had on IRC with Andrew Pinski, it was
felt that it was best to fix the standard predicate
'general_operand' to not allow SUBREG (MEM) with side-effects as it has known
issues associated with it - particularly reload not being able to deal with such
cases. 'general_operand' currently outlaws cases like paradoxical SUBREG (MEM)
on targets with insn scheduling and SUBREG (MEM) with non-zero SUBREG_BYTE. This
is another case it should not allow. Here is a patch that tightens
general_operands to not allow SUBREG (MEM) with MEM having side-effects.
I would like to hear some thoughts on this.
LGTM.
It would be good to get rid of subreg mem operands altogether at some point,
but that's a little too drastic for stage 3. This patch looks like a strict
improvement.
Thanks for looking at this. Is this OK for 4.7 as well?
Tejas Belagod
ARM.