Commit: RX: Add support for conditional register moves

Richard Henderson rth@redhat.com
Fri Aug 12 23:41:00 GMT 2011


On 08/11/2011 05:19 AM, Nick Clifton wrote:
> Hi Guys,
> 
>   I am applying the patch below on behalf of Renesas.  It adds support
>   to the RX backend for conditional register moves.
> 
>   Tested without any regressions on an rx-elf toolchain.
> 
> Cheers
>   Nick
> 
> gcc/ChangeLog
> 2011-08-11   Kazuhiro Inaoka  <kazuhiro.inaoka.ud@renesas.com>
> 
> 	* config/rx/rx.md (movsicc): Allow register to register
> 	transfers.
> 	(*movsicc): Likewise.
> 	(*stcc): Restrict this pattern to EQ and NE compares.
> 	(*stcc_reg): New pattern.  Works for any comparison but only for
> 	register transfers.
> 
> Index: gcc/config/rx/rx.md
> ===================================================================
> --- gcc/config/rx/rx.md	(revision 177584)
> +++ gcc/config/rx/rx.md	(working copy)
> @@ -1598,7 +1598,7 @@
>  		   (memex_commutative:SI (match_dup 0)
>  					 (match_dup 2)))
>  	      (clobber (reg:CC CC_REG))])]
> -  "peep2_regno_dead_p (2, REGNO (operands[0]))"
> +  "peep2_regno_dead_p (2, REGNO (operands[0])) && (optimize < 3 || optimize_size)"

The patch doesn't match the changelog.  And this looks very wrong...

r~



More information about the Gcc-patches mailing list