Vladimir Makarov <vmaka...@redhat.com> writes: > Index: lra.c > =================================================================== > --- lra.c (revision 199753) > +++ lra.c (working copy) > @@ -306,11 +306,11 @@ lra_emit_add (rtx x, rtx y, rtx z) > || (disp != NULL_RTX && ! CONSTANT_P (disp)) > || (scale != NULL_RTX && ! CONSTANT_P (scale))) > { > - /* Its is not an address generation. Probably we have no 3 op > + /* It is not an address generation. Probably we have no 3 op > add. Last chance is to use 2-op add insn. */ > lra_assert (x != y && x != z); > - emit_move_insn (x, z); > - insn = gen_add2_insn (x, y); > + emit_move_insn (x, y); > + insn = gen_add2_insn (x, z); > emit_insn (insn); > } > else
Could you add a comment to lra_emit_add saying why it has to be this way round (move y, add z)? Thanks, Richard