[PATCH 3/6] microblaze: Fixes for RTL checking

Jeff Law law@redhat.com
Tue Feb 21 19:28:00 GMT 2017


On 02/21/2017 07:48 AM, Segher Boessenkool wrote:
> REGNO can only be called on REGs, not SUBREGs; and INTVAL does not work
> on REGs.
>
> 2017-02-21  Segher Boessenkool  <segher@kernel.crashing.org>
>
> 	* config/microblaze/microblaze.c (microblaze_expand_shift): Do not
> 	test for register moves to themselves.
> 	* config/microblaze/microblaze.md (*ashlsi3_byone, *ashrsi3_byone,
> 	*lshrsi3_byone): Test for const1_rtx instead of calling INTVAL on
> 	something that isn't necessarily a CONST_INT.
So I wanted to make sure that the avoidance of a nop-move resulting from 
a nop-shift wasn't because the ISA couldn't encode a nop-move (and yes, 
I've run into such ISAs).

The microblaze doesn't seem to have any trouble encoding a nop move, so 
if we were to generate one due to this change it won't cause a problem.


OK for the trunk.

Jeff



More information about the Gcc-patches mailing list