On Sun, Mar 10, 2019 at 06:26:07PM +0000, Andrew Pinski wrote:
> Hi,
>   "uxtw x0, w1" is an alias for "mov w0, w1"  but currently the
> back-end marks it as extend type rather than mov_reg.  This patch
> fixes that.  For most schedule models, this does not matter; I am
> adding one where mov (both 32bit and 64bit register mov) can be
> considered as zero latency in some cases so being able to find them is
> important.
> 
> OK?  Bootstrapped and tested on aarch64-linux-gnu with no regressions.

OK.

Thanks,
James

> 
> Thanks,
> Andrew Pinski
> 
> ChangeLog:
> * config/aarch64/aarch64.md (zero_extendsidi2_aarch64): Fix type
> attrribute for uxtw.

> diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
> index ff83974aeb0..70f04186127 100644
> --- a/gcc/config/aarch64/aarch64.md
> +++ b/gcc/config/aarch64/aarch64.md
> @@ -1621,7 +1621,7 @@
>     ldr\t%s0, %1
>     fmov\t%w0, %s1
>     fmov\t%s0, %s1"
> -  [(set_attr "type" "extend,load_4,f_mcr,f_loads,f_mrc,fmov")
> +  [(set_attr "type" "mov_reg,load_4,f_mcr,f_loads,f_mrc,fmov")
>     (set_attr "arch" "*,*,fp,fp,fp,fp")]
>  )
>  

Reply via email to