From: Jakub Jelinek <jakub@redhat.com>
To: Roger Sayle <roger@nextmovesoftware.com>
Cc: gcc-patches@gcc.gnu.org, "'Uros Bizjak'" <ubizjak@gmail.com>
Subject: Re: [x86_64 PATCH] PR target/110104: Missing peephole2 for addcarry<mode>.
Date: Wed, 7 Jun 2023 00:39:15 +0200 [thread overview]
Message-ID: <ZH+1k8Yq1geqyfWS@tucnak> (raw)
In-Reply-To: <030901d998c6$ac062250$041266f0$@nextmovesoftware.com>
On Tue, Jun 06, 2023 at 11:31:42PM +0100, Roger Sayle wrote:
>
> This patch resolves PR target/110104, a missed optimization on x86 around
> adc with memory operands. In i386.md, there's a peephole2 after the
> pattern for *add<mode>3_cc_overflow_1 that converts the sequence
> reg = add(reg,mem); mem = reg [where the reg is dead afterwards] into
> the equivalent mem = add(mem,reg). The equivalent peephole2 for adc
> is missing (after addcarry<mode>), and is added by this patch.
>
> For the example code provided in the bugzilla PR:
Seems to be pretty much the same as one of the 12 define_peephole2
patterns I've posted in
https://gcc.gnu.org/pipermail/gcc-patches/2023-June/620821.html
> 2023-06-07 Roger Sayle <roger@nextmovesoftware.com>
>
> gcc/ChangeLog
> PR target/110104
> * config/i386/i386.md (define_peephole2): Transform reg=adc(reg,mem)
> followed by mem=reg into mem=adc(mem,reg) when applicable.
>
> gcc/testsuite/ChangeLog
> PR target/110104
> * gcc.target/i386/pr110104.c: New test case.
The testcase will be useful though (but I'd go with including
the intrin header and using the intrinsic rather than builtin).
Jakub
next prev parent reply other threads:[~2023-06-06 22:39 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-06 22:31 Roger Sayle
2023-06-06 22:39 ` Jakub Jelinek [this message]
2023-06-06 23:28 ` Roger Sayle
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=ZH+1k8Yq1geqyfWS@tucnak \
--to=jakub@redhat.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=roger@nextmovesoftware.com \
--cc=ubizjak@gmail.com \
/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).