Handle XOR in canonicalize_condition

Jeff Law law@redhat.com
Fri Jan 24 20:47:00 GMT 2014

On 01/24/14 01:24, Richard Sandiford wrote:
> Richard Sandiford <rdsandiford@googlemail.com> writes:
>> The other problem is related to the way that MIPS16 tests for equality.
>> Conditional branches test register $24, and the only instructions that
>> set $24 are MOVE and CMP(I), which is actually an XOR rather than a
>> subtraction.
> Er, don't know what I was thinking here, but please ignore this summary
> of the ISA.  There are conditional branches to test MIPS16 registers
> and other ways of setting $24.  (But other than that...)
> The patch itself still stands though.
Right.  This is just the RTL version of what I did for trees about a 
year ago.

The comment is a bit misleading as far as pulling things out of the RTL. 
  You're showing it a combined form.  SET is something like
(set (reg) (xor (reg) (reg))) if I'm reading everything correctly.

Please try to improve the comment and you're good to go.  No need to 
wait for further review, but please post the final form for the archivers.


More information about the Gcc-patches mailing list