From: Palmer Dabbelt <palmer@dabbelt.com>
To: gcc-patches@gcc.gnu.org
Cc: gcc-patches@gcc.gnu.org
Subject: Re: [PATCH] RISC-V: Produce better code with complex constants [PR95632] [PR106602]
Date: Thu, 08 Dec 2022 12:21:24 -0800 (PST) [thread overview]
Message-ID: <mhng-d1ba7857-4bbf-4fa0-b759-904a89fd596a@palmer-ri-x1c9a> (raw)
In-Reply-To: <1953155e-7d64-664b-4b88-2fc4cb33acf7@gmail.com>
On Thu, 08 Dec 2022 10:15:47 PST (-0800), gcc-patches@gcc.gnu.org wrote:
>
>
> On 12/8/22 10:53, Palmer Dabbelt wrote:
>> On Wed, 07 Dec 2022 12:55:17 PST (-0800), rzinsly@ventanamicro.com wrote:
>>> Due to RISC-V limitations on operations with big constants combine
>>> is failing to match such operations and is not being able to
>>> produce optimal code as it keeps splitting them. By pretending we
>>> can do those operations we can get more opportunities for
>>> simplification of surrounding instructions.
>>
>> I saw Jeff's comments. This is always the kind of thing that worries
>> me: we're essentially lying to the optimizer in order to trick it into
>> generating better code, which might just make it generate worse code.
>> It's always easy to see a small example that improves, but those could
>> be wiped out by secondary effects in real code. So I'd usually want to
>> have some benchmarking for a patch like this.
>>
>> That said, if this is just the standard way of doing things then maybe
>> it's just fine?
> Bridge combiner patterns are pretty standard. The insn's condition of
> cse_not_expected is also in there to minimize the potential for
> surprises by not exposing this too early.
OK, I'm fine with this, then -- aside from the fairly minor issues
pointed out.
prev parent reply other threads:[~2022-12-08 20:21 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-12-07 20:55 Raphael Moreira Zinsly
2022-12-07 21:13 ` Jeff Law
2022-12-07 21:30 ` Jakub Jelinek
2022-12-08 17:39 ` Palmer Dabbelt
2022-12-08 17:53 ` Palmer Dabbelt
2022-12-08 18:15 ` Jeff Law
2022-12-08 20:21 ` Palmer Dabbelt [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=mhng-d1ba7857-4bbf-4fa0-b759-904a89fd596a@palmer-ri-x1c9a \
--to=palmer@dabbelt.com \
--cc=gcc-patches@gcc.gnu.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).