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")] > ) >