From: "Andre Vieira (lists)" <Andre.SimoesDiasVieira@arm.com>
To: Ramana Radhakrishnan <ramana.gcc@googlemail.com>,
Bernd Schmidt <bschmidt@redhat.com>
Cc: GCC Patches <gcc-patches@gcc.gnu.org>
Subject: Re: [PATCH] PR78255: Make postreload aware of NO_FUNCTION_CSE
Date: Fri, 09 Dec 2016 16:16:00 -0000 [thread overview]
Message-ID: <584AD8E9.3000406@arm.com> (raw)
In-Reply-To: <CAJA7tRZ93zT5Q2rkDzhqLpJLEhNbmRTiMZOivHegPT1+AJj__A@mail.gmail.com>
On 09/12/16 16:02, Ramana Radhakrishnan wrote:
> On Fri, Dec 9, 2016 at 3:58 PM, Bernd Schmidt <bschmidt@redhat.com> wrote:
>> On 12/09/2016 04:34 PM, Andre Vieira (lists) wrote:
>>
>>> Regardless, the other testcases I add in this patch show a sub-optimal
>>> transformation done by postreload, turning direct calls into indirect
>>> calls, for targets which have specifically pointed out that no CSE
>>> should be done on functions through 'NO_FUNCTION_CSE'.
>>
>>
>> What I'm wondering about is whether the patch wouldn't also prevent the
>> opposite transformation. Is there a reason not to do that one? Can the
>> problem be modeled by tweaking costs?
>
> I really don't think we should have a solution that relies on costs
> for correctness .
>
> regards
> Ramana
>
Regardless, 'reload_cse_simplify' would never perform the opposite
transformation. It checks whether it can replace anything within the
first argument INSN, with the second argument TESTREG. As the name
implies this will always be a register. I double checked, the function
is only called in 'reload_cse_regs' and 'testreg' is created using
'gen_rtx_REG'.
Cheers,
Andre
next prev parent reply other threads:[~2016-12-09 16:16 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-09 14:03 Andre Vieira (lists)
2016-12-09 15:02 ` Bernd Schmidt
2016-12-09 15:34 ` Andre Vieira (lists)
2016-12-09 15:58 ` Bernd Schmidt
2016-12-09 16:02 ` Ramana Radhakrishnan
2016-12-09 16:16 ` Andre Vieira (lists) [this message]
2016-12-09 16:31 ` Bernd Schmidt
2016-12-09 17:22 ` [arm-embedded][committed] " Andre Vieira (lists)
2017-01-06 10:53 ` [PATCH] " Andre Vieira (lists)
2017-01-06 15:47 ` Jeff Law
2017-01-11 15:09 ` Andre Vieira (lists)
2016-12-12 9:05 ` Christophe Lyon
2016-12-20 16:48 ` [ARM][committed] Fix for PR78255-2.c testism for targets that do not optimize for tailcall Andre Vieira (lists)
2016-12-09 16:01 ` [PATCH] PR78255: Make postreload aware of NO_FUNCTION_CSE Jeff Law
2016-12-09 15:47 Wilco Dijkstra
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=584AD8E9.3000406@arm.com \
--to=andre.simoesdiasvieira@arm.com \
--cc=bschmidt@redhat.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=ramana.gcc@googlemail.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).