This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-ssa] Fix typo in last toplev.c change


In message <1055303956.11031.258.camel@frodo.toronto.redhat.com>, Diego Novillo
 writes:
 >On Tue, 2003-06-10 at 23:46, law@redhat.com wrote:
 >
 >> [ Ignore the sillyness required to specify the output file for now.  The
 >>   point is we can hook into a specific SSA pass and with relative
 >>   ease determine if it did its job. ]
 >> 
 >Very good stuff.  This is great!
I'm not sure if I'd call it great, but it does allow us to do certain
kinds of testing a lot more easily than before.

 >Now we can add a boatload of tests to make sure we don't disable
 >optimizations by mistake.
To a point.  This kind of infrastructure can find things like failure
to eliminate redundant or dead code.  It's lousy for anything related
to code motion since we're just counting occurences of an expression.

 >Hmm, I wonder what
 >form would false positives take.  Say, we are expecting an expression to
 >disappear, but it turns out that it's code-motioned somewhere else where
 >it makes better sense... anyway, I'm rambling.  We'll figure it out when
 >we get there.
Well, if we expected an expression to "disappear", then well, it should
go away, code motion isn't the issue.  ie, if code is dead, then it
should go away.  If it's redundant, then we need to know how 
many evaluations are really needed and look for them.

Now for expressions which we expect to motion around via PRE/LCM or
similar techniques we have to do counting *and* expression placement.
The former is easy, the latter is more complex.  I don't have a good
scheme in mind for that.

 >For the time being, we could start adding lots of simple tests.  Dan
 >Nicolaescu had a few tests for DCE and CCP that we could now add.
Yes.  That was the point.  To have a way to test that the existing
optimizers are doing their job.

Jeff



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]