From: Alex Coplan <alex.coplan@arm.com>
To: Segher Boessenkool <segher@kernel.crashing.org>
Cc: gcc-patches@gcc.gnu.org, richard.sandiford@arm.com
Subject: Re: [PING][PATCH v2] combine: Don't turn (mult (extend x) 2^n) into extract [PR96998]
Date: Thu, 15 Oct 2020 10:14:38 +0100 [thread overview]
Message-ID: <20201015091436.4r7ribvooca33gp7@arm.com> (raw)
In-Reply-To: <20201012171431.GR2672@gate.crashing.org>
Hi Segher,
On 12/10/2020 12:14, Segher Boessenkool wrote:
> On Mon, Oct 12, 2020 at 05:19:58PM +0100, Richard Sandiford wrote:
> >
> > I agree there's a target bug here. Please see the explanation I posted
> > in: https://gcc.gnu.org/pipermail/gcc-patches/2020-September/554518.html
> > (especially the first sentence quoted below :-)).
> >
> > The situation as things stand is that aarch64 has a bug: it accepts
> > an odd sign_extract representation of addresses, but doesn't accept
> > that same odd form of address as an LEA. We have two options:
> >
> > (a) add back instructions that recognise the odd form of LEA, or
> > (b) remove the code that accepts the odd addresses
> >
> > I think (b) is the way to go here.
>
> Either seems to be fine.
>
> > But doing that on its own
> > would regress code quality. The reason we recognised the odd
> > addresses in the first place was because that was the rtl that
> > combine happened to generate for an important case.
> >
> > So if we go for (b) but fix the aarch64 bug strictly before the
> > combine patch, we would need to:
>
> This is necessary to be able to evaluate what such a combine patch
> does in practice -- so there is no other way.
>
> > (1) Apply the target fix and adjust the testsuite markup to make sure
> > that the git commit doesn't regress anyone's test results.
>
> It is normal to regress the testsuite for a little while.
>
> > (2) Apply the combine patch and revert the testsuite markup changes
> > from (1).
> >
> > That seems like make-work, and would still show as a blip for
> > people doing performance tracking.
>
> Yes, that is make-work. Just regress the testsuite.
>
> You do not even have to apply the target patch first (but you need to
> send it as separate patch, so that other people can test it!)
>
> > If you prefer, we could fix the aarch64 bug and patch combine as a
> > single commit. See:
> >
> > https://gcc.gnu.org/pipermail/gcc-patches/2020-September/554257.html
> >
> > for the full patch, including the aarch64 bugfix.
>
> I need separate patches, so that I can see what the current combine
> does, without ICEing all over. That is all. Send it as a series of two
> patches, or something.
Apologies for the misunderstanding and my inaccurate summary in the previous
email, there is of course a target bug here as well.
I've sent the patches as a two-patch series where the first patch fixes the
AArch64 bug and the second restores code quality with the patch to combine:
https://gcc.gnu.org/pipermail/gcc-patches/2020-October/556237.html
https://gcc.gnu.org/pipermail/gcc-patches/2020-October/556238.html
Thanks,
Alex
prev parent reply other threads:[~2020-10-15 9:14 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-30 10:39 [PATCH " Alex Coplan
2020-10-08 10:21 ` [PING][PATCH " Alex Coplan
2020-10-08 20:20 ` Segher Boessenkool
2020-10-09 8:38 ` Alex Coplan
2020-10-09 23:02 ` Segher Boessenkool
2020-10-12 16:19 ` Richard Sandiford
2020-10-12 17:14 ` Segher Boessenkool
2020-10-15 9:14 ` Alex Coplan [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201015091436.4r7ribvooca33gp7@arm.com \
--to=alex.coplan@arm.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=richard.sandiford@arm.com \
--cc=segher@kernel.crashing.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).