[PATCH] fix non-canonical RTL produced by expand
Hans-Peter Nilsson
hp@bitrange.com
Sat Oct 15 14:13:00 GMT 2005
On Wed, 28 Sep 2005, Paolo Bonzini wrote:
> Paolo Bonzini wrote:
> >
> >>>> * optabs.c (expand_binop): Use best_order_for_commutative_binop_p
> >>>> to order operands.
> >>>> (best_order_for_commutative_binop_p): New.
> David Edelsohn reported that this patches causes a 3-5% regression on
> gap, because it causes cases like (plus (mem) (reg)) to be kept as they
> are, instead of being canonicalized to (plus (reg) (mem)).
There is no specified canonical order between reg and mem. See
docs, @node Insn Canonicalizations. (But if you want to change
that and in the order you gave, I for one would be happy.)
brgds, H-P
More information about the Gcc-patches
mailing list