From: Jeff Law <jeffreyalaw@gmail.com>
To: Aldy Hernandez <aldyh@redhat.com>,
Richard Biener <richard.guenther@gmail.com>
Cc: GCC patches <gcc-patches@gcc.gnu.org>,
"MacLeod, Andrew" <amacleod@redhat.com>
Subject: Re: [PATCH] Reset relations when crossing backedges.
Date: Mon, 24 Jan 2022 15:58:53 -0700 [thread overview]
Message-ID: <5f763169-f760-6ac8-fff2-645bbd3eca5d@gmail.com> (raw)
In-Reply-To: <CAGm3qMUUif_YBA8NCwJr0TVk8H616Wo8A-nNv3BY+JFEYtpnNg@mail.gmail.com>
On 1/21/2022 3:29 AM, Aldy Hernandez wrote:
> On Fri, Jan 21, 2022 at 10:43 AM Richard Biener
> <richard.guenther@gmail.com> wrote:
>> On Fri, Jan 21, 2022 at 9:30 AM Aldy Hernandez via Gcc-patches
>> <gcc-patches@gcc.gnu.org> wrote:
>>> As discussed in PR103721, the problem here is that we are crossing a
>>> backedge and causing us to use relations from a previous iteration of a
>>> loop.
>>>
>>> This handles the testcases in both PR103721 and PR104067 which are variants
>>> of the same thing.
>>>
>>> Tested on x86-64 Linux with the usual regstrap as well as verifying the
>>> thread count before and after the patch. The number of threads is
>>> reduced by a miniscule amount.
>>>
>>> I assume we need release manager approval at this point? OK for trunk?
>> Not for regression fixes.
> OK, I've pushed it to fix the P1s. We can continue refining the
> solution in a follow-up patch.
>
>> Btw, I wonder whether you have to treat irreducible regions in the same
>> way more generally - which edges are marked as backedge there depends
>> on which edge into the region was visited first. I also wonder how we
> Jeff, Andrew??
I think this comes down to the dominator discussion we were having in
BZ. My understanding from reading Andrew's messages is that need to
reset relations when we cross an edge where the source of the edge does
not dominate the destination of the edge. That would solve the loop
problem, the irreducible region problem and I think other possibly
latent problems with threading & relations.
Jeff
next prev parent reply other threads:[~2022-01-24 22:58 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-21 8:29 Aldy Hernandez
2022-01-21 9:43 ` Richard Biener
2022-01-21 10:29 ` Aldy Hernandez
2022-01-21 10:56 ` Richard Biener
2022-01-21 12:11 ` Aldy Hernandez
2022-01-24 8:50 ` Richard Biener
2022-01-24 19:20 ` Aldy Hernandez
2022-02-01 18:41 ` Aldy Hernandez
2022-02-02 9:27 ` Richard Biener
2022-03-19 19:27 ` Jeff Law
2022-03-21 7:49 ` Richard Biener
2022-01-24 22:58 ` Jeff Law [this message]
2022-02-09 17:43 ` Martin Jambor
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=5f763169-f760-6ac8-fff2-645bbd3eca5d@gmail.com \
--to=jeffreyalaw@gmail.com \
--cc=aldyh@redhat.com \
--cc=amacleod@redhat.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=richard.guenther@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).