> On Apr 15, 2015, at 12:41 AM, Kugan <kugan.vivekanandara...@linaro.org> wrote: > > This patch uses clobber with match_scratch instead of earlyclobber for > aarch64_lshr_sisd_or_int_<mode>3 so that RA can have more freedom in > selecting suitable register, as discussed in > http://thread.gmane.org/gmane.comp.gcc.patches/336162 and reported in > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65139. > > This is based on Maxim's patch. I have bootstrapped and regression > tested on aarch64-linux-gnu with no new regressions. Is this OK for trunk? > > Thanks, > Kugan > > gcc/ChangeLog: > > 2015-04-15 Kugan Vivekanandarajah <kug...@linaro.org> > Maxim Kuvyrkov <maxim.kuvyr...@linaro.org> > > PR target/65139 > * config/aarch64/aarch64.md (<optab><mode>3): Expand lshr with > gen_aarch64_lshr_sisd_or_int_<mode>3. > (*aarch64_lshr_sisd_or_int_<mode>3): Rename to > aarch64_lshr_sisd_or_int_<mode>3 and use clobber with > match_scratch instead of early clobber. > <p.txt>
For the benefit of other reviewers -- I have reviewed this patch internally and it looks OK. Kugan, did you audit other patterns in aarch64.md to see if any other early-clobbers can be optimized in this way? Thank you, -- Maxim Kuvyrkov www.linaro.org