[tree-ssa] Lazy updating of stmt operands

Zdenek Dvorak rakdver@atrey.karlin.mff.cuni.cz
Sun Dec 7 17:28:00 GMT 2003


Hello,

> > what is the purpose of having lists of stmt operands updated on demand?
> >
> Performance.  If the statement hasn't changed, no point re-scanning it.

right.  But this would as well be the case if the information was always
kept up-to-date.

> > I thought that it is for performance reasons, but this seems not to be
> > the case as all the statements are anyway scanned in the final dce pass,
> > so they end up in updated forms and we cannot gain anything elsewhere.
> > 
> The call to get_stmt_operands doesn't necessarily mean that the
> statement will be re-scanned.
>
> > Why I am interested in this is that it prevents us from having also
> > def-use edges (immediate uses) provided explicitly, which would be
> > convenient in two cases I have encountered recently.
> > 
> tree-dfa.c:compute_immediate_uses()

Which needs to pass through every single statement in the program. Not
really terribly efficient.

Zdenek



More information about the Gcc mailing list