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: [patch] Lno branch merge part 12 -- induction variable optimizations


Hello,

> > > 1) does not apply in some cases, especially if we obtained the 
> > > statement
> > > as a statement that defines a given ssa name.
> > >
> > >> If you think, performance implications are not considerable
> > >
> > > The performance definitely might be a problem, eventually.  I haven't
> > > seen the problems occur in practice yet, but I think that we should 
> > > have
> > > a way how to obtain a bsi for statement in a constant time (but this is
> > > something for a separate patch).
> > >
> > >> than make remove_statement() also externally visible :-).
> > >
> > > Why?
> > 
> > see above.
> So far I've "solved" those problems by punting and waiting for
> DCE to clean things up.  That's been pretty consistent with the
> design decisions we've made regarding isolation of optimizations.
> 
> Is there some reason why that model is not appropriate?  For example,
> does leaving these dead statements in the IL until the next DCE
> pass actually inhibit optimizations or cause correctness issues?

I used this as well in the initial stage; it turned out to be just
simpler to remove the statements for that I know they are dead.

However on some places (when you want to replace a definition of
a SSA name by a different computation, for example) this simply
is not an option.

Zdenek


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