From: "Richard Guenther" <richard.guenther@gmail.com>
To: "Jan Hubicka" <hubicka@ucw.cz>
Cc: "Diego Novillo" <dnovillo@google.com>,
"Andrew MacLeod" <amacleod@redhat.com>,
"Jan Hubicka" <jh@suse.cz>,
gcc-patches@gcc.gnu.org
Subject: Re: Continue stmt branch prediction
Date: Thu, 13 Mar 2008 09:21:00 -0000 [thread overview]
Message-ID: <84fc9c000803130221x3e52a493y3d707dff78a9ebeb@mail.gmail.com> (raw)
In-Reply-To: <20080313013740.GO24550@atrey.karlin.mff.cuni.cz>
On Thu, Mar 13, 2008 at 2:37 AM, Jan Hubicka <hubicka@ucw.cz> wrote:
> > On 3/5/08 2:28 PM, Jan Hubicka wrote:
> >
> > >I will give it one last try. I think the misunderstanding can be here.
> > >The prediction hint is not affecting edges *out* of the block it sits
> > >in. When lowered, it is affecting all the edges that are going from
> > >basic block not postdominated by the block to basic block postdominated
> > >by the block (here the course of execution is crossing the point that it
> > >inavoidably leads to the place PREDICT_EXPR is). Think of abort call:
> > >it is affecting all conditionals that are guarding it in the program.
> >
> > Ah, I see now. Yes, I think I finally got your point. Adding
> > PREDICT_EXPR is fine with me.
>
> Great :)
> Thanks for time needed to get through this!
>
> >
> > Instead of having to special-case it in places like DCE, how about we
> > make it produce a value which is assigned to an artificial volatile
> > global temporary? This way, we don't need to touch the optimizers, they
> > will all naturally back away from moving and/or removing it.
>
> This decision is definitly up to you. I can definitly make PREDICT_EXPR
> an expression tree instead of GIMPLE statement and put it into
> MODIFY_EXPR destinating some dummy volatile. This seems bit hackish way
> to me to save one case label in DCE: DCE is a bit special among the
> early passes in a way that it does worry about more side effects of
> statements beside the usual operands+semantics of statements all the
> other propagation passes are about. DCE has to know all GIMPLE
> statement types (and it just aborts on any new). I would tend to argue
> that with exception of DCE we can hardly come with early scalar cleanup
> pass that really do care here and will need to special case MODIFY_EXPR
> statement.
I also think this is a hack and adjusting DCE sounds more natural. A
volatile global will also affect optimization because of the needed
VOPs.
Richard.
next prev parent reply other threads:[~2008-03-13 9:21 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-09 20:59 Jan Hubicka
2008-02-10 14:00 ` Diego Novillo
2008-02-10 15:49 ` Jan Hubicka
2008-02-11 2:51 ` Diego Novillo
2008-02-11 8:21 ` Jan Hubicka
2008-02-11 22:42 ` Andrew MacLeod
2008-02-14 15:31 ` Jan Hubicka
2008-02-14 15:38 ` Richard Guenther
2008-02-14 17:49 ` Jan Hubicka
2008-02-14 18:27 ` Andrew MacLeod
2008-02-14 19:12 ` Jan Hubicka
2008-02-14 15:45 ` Andrew MacLeod
2008-02-14 18:11 ` Jan Hubicka
2008-03-05 18:33 ` Jan Hubicka
2008-03-05 22:10 ` Diego Novillo
2008-03-05 22:28 ` Jan Hubicka
2008-03-12 17:54 ` Diego Novillo
2008-03-13 1:38 ` Jan Hubicka
2008-03-13 1:41 ` Jan Hubicka
2008-03-13 9:21 ` Richard Guenther [this message]
2008-03-13 14:12 ` Diego Novillo
2008-03-19 6:33 ` H.J. Lu
2008-03-19 11:25 ` Jan Hubicka
2008-03-19 11:37 ` Richard Guenther
2008-03-19 11:45 ` Jan Hubicka
2008-03-19 13:21 ` Richard Guenther
2008-02-20 22:53 Bradley Lucier
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=84fc9c000803130221x3e52a493y3d707dff78a9ebeb@mail.gmail.com \
--to=richard.guenther@gmail.com \
--cc=amacleod@redhat.com \
--cc=dnovillo@google.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=hubicka@ucw.cz \
--cc=jh@suse.cz \
/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).