This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [AArch64][PR65139] use clobber with match_scratch for aarch64_lshr_sisd_or_int_<mode>3
- From: Maxim Kuvyrkov <maxim dot kuvyrkov at linaro dot org>
- To: Kugan <kugan dot vivekanandarajah at linaro dot org>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, Marcus Shawcroft <Marcus dot Shawcroft at arm dot com>, james dot greenhalgh at arm dot com, Richard Earnshaw <Richard dot Earnshaw at arm dot com>
- Date: Wed, 15 Apr 2015 14:59:20 +0300
- Subject: Re: [AArch64][PR65139] use clobber with match_scratch for aarch64_lshr_sisd_or_int_<mode>3
- Authentication-results: sourceware.org; auth=none
- References: <552D897C dot 2040207 at linaro dot org>
> On Apr 15, 2015, at 12:41 AM, Kugan <kugan.vivekanandarajah@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 <kuganv@linaro.org>
> Maxim Kuvyrkov <maxim.kuvyrkov@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