------- Comment #12 from bonzini at gnu dot org 2009-02-06 09:16 -------
There's another peephole2, namely from
[(set (match_operand 0 "register_operand")
(match_operand 1 "register_operand"))
(set (match_operand 0 "register_operand")
(match_operator 3 "arith_or_logical_operator"
[(match_dup 0)
(match_operand 2 "memory_operand" "")]))]
to
[(set (match_dup 0) (match_dup 2))
(set (match_dup 0) (match_op_dup 3 [(match_dup 0) (match_dup 1)])]
for operands[0] != operands[1] and commutative operator 3 (i.e.
plus,mult,and,ior,xor,smin,smax,umin,umax). Testing a patch.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38824