public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Peter Bergner <bergner@linux.ibm.com>
To: Richard Biener <richard.guenther@gmail.com>
Cc: renlin.li@foss.arm.com, Jeff Law <law@redhat.com>,
	       "Vladimir N. Makarov" <vmakarov@redhat.com>,
	       Christophe Lyon <christophe.lyon@linaro.org>,
	       GCC Patches <gcc-patches@gcc.gnu.org>,
	       Segher Boessenkool <segher@kernel.crashing.org>,
	       Ramana Radhakrishnan <Ramana.Radhakrishnan@arm.com>,
	       kyrylo.tkachov@arm.com,
	Wilco Dijkstra <Wilco.Dijkstra@arm.com>
Subject: Re: [PATCH 2/2 v3][IRA,LRA] Fix PR86939, IRA incorrectly creates an interference between a pseudo register and a hard register
Date: Thu, 08 Nov 2018 14:29:00 -0000	[thread overview]
Message-ID: <50417ac6-5be5-191f-251e-1480f46c8467@linux.ibm.com> (raw)
In-Reply-To: <CAFiYyc30p5=RbShojcQTe394HsPA5yX+Ak9MtNiXCGAGAZfvFg@mail.gmail.com>

On 11/8/18 5:48 AM, Richard Biener wrote:
> Err, that looks very much like a hack that manages to hide the issue.

It's true we do not want to hide the issue by adding unneeded conflicts,
since that can lead to unnecessary spills.  However, ...


> Esp. adding conflicts in a loop that says "See which defined values die here."
> is quite fishy.

..the original loop is dealing with some of the gory details you never read
about in academic RA papers.  This code is used to catch the case where an insn
defines a register(s) that is never used.  Because it is never used, it never
ends up in the "live" (ie, live and available) set, which can cause us to miss
some required conflicts.

That said, I still need to look at the RTL from the bad program before
determining whether the patch is correct or not.  Computing accurate
conflict information is a delicate thing.

Peter

  reply	other threads:[~2018-11-08 14:29 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-26 21:14 [PATCH 0/2][IRA,LRA] " Peter Bergner
2018-09-26 21:16 ` [PATCH 1/2][IRA,LRA] " Peter Bergner
2018-09-26 21:36 ` [PATCH 2/2][IRA,LRA] " Peter Bergner
2018-09-28 21:45 ` [PATCH 0/2][IRA,LRA] " Vladimir Makarov
2018-09-30 20:28   ` Peter Bergner
2018-10-01  0:57     ` H.J. Lu
2018-10-01  1:18       ` Peter Bergner
2018-10-01 12:46         ` H.J. Lu
2018-10-01 12:51           ` H.J. Lu
2018-10-01 13:16             ` H.J. Lu
2018-10-01 14:05               ` Peter Bergner
2018-10-02  4:08             ` Peter Bergner
2018-10-02 14:50               ` Jeff Law
2018-10-02 15:07               ` Peter Bergner
2018-10-02 15:37                 ` H.J. Lu
2018-10-02 15:55                   ` Peter Bergner
2018-10-02 17:14                     ` H.J. Lu
2018-10-02 21:53                 ` Peter Bergner
2018-10-02 22:28                   ` H.J. Lu
2018-10-03  0:35                     ` Peter Bergner
2018-10-03  2:23                       ` H.J. Lu
2018-10-03  2:46                         ` Peter Bergner
2018-10-03 14:43                 ` [PATCH 2/2 v3][IRA,LRA] " Peter Bergner
2018-10-04 22:18                   ` Vladimir Makarov
2018-10-05 16:50                     ` Peter Bergner
2018-10-05 18:54                       ` Vladimir Makarov
2018-10-05 20:10                         ` Peter Bergner
2018-10-05 22:56                           ` Vladimir Makarov
2018-10-06  6:40                             ` Peter Bergner
2018-10-08  9:37                               ` Christophe Lyon
2018-10-08 14:21                                 ` Peter Bergner
2018-10-08 14:46                                   ` Christophe Lyon
2018-10-08 15:04                                     ` Jeff Law
2018-10-11  2:57                                       ` Peter Bergner
2018-10-11 18:26                                         ` Peter Bergner
2018-10-11 20:31                                           ` Peter Bergner
2018-10-11 20:46                                             ` Jeff Law
2018-10-11 21:09                                               ` Peter Bergner
2018-10-11 21:36                                                 ` Jeff Law
2018-10-12  9:50                                                 ` Eric Botcazou
2018-10-11 21:05                                             ` Vladimir Makarov
2018-10-12 16:57                                               ` Peter Bergner
2018-10-12 17:56                                                 ` Jeff Law
2018-10-12  4:44                                             ` Jeff Law
2018-10-16  2:50                                               ` Peter Bergner
2018-11-01 18:50                                                 ` Renlin Li
2018-11-01 20:35                                                   ` Segher Boessenkool
2018-11-01 22:08                                                   ` Peter Bergner
2018-11-02 10:05                                                     ` Renlin Li
2018-11-05 19:20                                                     ` Jeff Law
2018-11-05 19:36                                                       ` Peter Bergner
2018-11-05 19:41                                                         ` Jeff Law
2018-11-06 10:52                                                           ` Renlin Li
2018-11-06 10:57                                                             ` Ramana Radhakrishnan
2018-11-06 12:23                                                               ` Renlin Li
2018-11-06 18:46                                                                 ` Peter Bergner
2018-11-06 18:58                                                             ` Jeff Law
2018-11-08 10:57                                                               ` Renlin Li
2018-11-08 11:49                                                                 ` Richard Biener
2018-11-08 14:29                                                                   ` Peter Bergner [this message]
2018-11-08 19:01                                                                     ` Peter Bergner
2018-11-08 12:35                                                                 ` Peter Bergner
2018-11-08 13:42                                                                   ` Renlin Li
2018-11-08 15:21                                                                 ` Peter Bergner
2018-11-08 16:20                                                                   ` Renlin Li
2018-11-08 17:52                                                                     ` Peter Bergner

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=50417ac6-5be5-191f-251e-1480f46c8467@linux.ibm.com \
    --to=bergner@linux.ibm.com \
    --cc=Ramana.Radhakrishnan@arm.com \
    --cc=Wilco.Dijkstra@arm.com \
    --cc=christophe.lyon@linaro.org \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=kyrylo.tkachov@arm.com \
    --cc=law@redhat.com \
    --cc=renlin.li@foss.arm.com \
    --cc=richard.guenther@gmail.com \
    --cc=segher@kernel.crashing.org \
    --cc=vmakarov@redhat.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).