From: Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
To: Andrew MacLeod <amacleod@redhat.com>
Cc: Steven Bosscher <s.bosscher@student.tudelft.nl>,
Diego Novillo <dnovillo@redhat.com>,
gcc mailing list <gcc@gcc.gnu.org>
Subject: Re: [tree-ssa] Lazy updating of stmt operands
Date: Tue, 09 Dec 2003 20:40:00 -0000 [thread overview]
Message-ID: <20031209203625.GA18964@atrey.karlin.mff.cuni.cz> (raw)
In-Reply-To: <1070979982.17702.2610.camel@p4>
Hello,
> > > > > tree-dfa.c:compute_immediate_uses()
> > > >
> > > > Which needs to pass through every single statement in the program. Not
> > > > really terribly efficient.
> > >
> > > *shrug*, it's used by SSA-CCP. Since def-use edges are only needed by
> > > some passes, I don't think it would be worth our while trying to
> > > maintain them in get_stmt_operands.
> >
> > There are going to be more passes that need immediate uses. Even a simple
> > pass to kill redundant PHIs (say, after unswitching a loop) will have to go
> > over _all_ statements to get the immediate uses of one or two statements. It
> > would be really nice if there were some way to keep this information
> > up-to-date at all times...
>
> So use get_immidiate_uses() which does what is required on demand, and
> if we discover its a serious performance issue down the road, it ought
> to be easy enough to change.
we are talking about updating ssa after every operation; this would mean
calling get_immediate_uses a lot. I am quite sure there would be a
performance problem. There is a little sense in not keeping the
information, especially given that it is entirely trivial. I will
prepare a patch so that we may measure whether the costs of the updating
are significant.
Zdenek
next prev parent reply other threads:[~2003-12-09 20:36 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-12-07 16:22 Zdenek Dvorak
2003-12-07 17:14 ` Diego Novillo
2003-12-07 17:28 ` Zdenek Dvorak
2003-12-07 17:36 ` Diego Novillo
2003-12-07 18:09 ` Zdenek Dvorak
2003-12-11 19:39 ` law
2003-12-07 22:20 ` Steven Bosscher
2003-12-09 14:30 ` Andrew MacLeod
2003-12-09 20:40 ` Zdenek Dvorak [this message]
2003-12-11 19:41 ` law
2003-12-11 19:38 ` law
2003-12-11 19:52 ` Zdenek Dvorak
2003-12-11 22:36 ` Zdenek Dvorak
2003-12-11 23:34 ` Andrew MacLeod
2003-12-15 19:10 ` Andrew MacLeod
2003-12-15 19:19 ` Zdenek Dvorak
2003-12-15 20:55 ` Andrew MacLeod
2003-12-15 21:06 ` Zdenek Dvorak
2003-12-15 21:39 ` Andrew MacLeod
2003-12-15 21:49 ` Zdenek Dvorak
2003-12-15 22:04 ` Andrew MacLeod
2003-12-15 22:39 ` law
2003-12-17 4:56 ` law
2003-12-16 23:32 ` Andrew MacLeod
2003-12-17 0:09 ` Zdenek Dvorak
2003-12-17 0:21 ` Andrew MacLeod
2003-12-17 3:28 ` law
2003-12-15 19:28 ` Diego Novillo
2003-12-11 22:31 Chris Lattner
2003-12-12 3:14 ` law
2003-12-12 3:58 ` Chris Lattner
2003-12-12 19:25 ` Andrew MacLeod
2003-12-12 19:42 ` Zdenek Dvorak
2003-12-12 19:45 ` Andrew MacLeod
2003-12-12 19:54 ` Chris Lattner
2003-12-12 19:55 ` Andrew MacLeod
2003-12-12 21:26 ` Diego Novillo
2003-12-12 19:57 ` Chris Lattner
2003-12-13 16:02 ` Andrew MacLeod
2003-12-14 3:39 ` Chris Lattner
2003-12-15 23:41 ` law
2003-12-16 6:02 ` Andrew MacLeod
2003-12-15 20:47 Chris Lattner
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=20031209203625.GA18964@atrey.karlin.mff.cuni.cz \
--to=rakdver@atrey.karlin.mff.cuni.cz \
--cc=amacleod@redhat.com \
--cc=dnovillo@redhat.com \
--cc=gcc@gcc.gnu.org \
--cc=s.bosscher@student.tudelft.nl \
/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).