[tree-ssa] [RFC] loop versioning - 2

Zdenek Dvorak rakdver@atrey.karlin.mff.cuni.cz
Tue Jan 20 00:19:00 GMT 2004


Hello,

> >3) +   free_dominance_info (CDI_DOMINATORS);
> >   +   calculate_dominance_info (CDI_DOMINATORS);
> >
> >   This should not be neccesary.  Use cfgloopmanip.c:loopify to create
> >   the new loop and the dominators will be updated automatically.
> 
> loopify() is tightly connected to loop unswitch

not so much.  Yes, loop unswitching is the only place which uses it, but
the function itself is completely independent on it.  I have checked it
and unless I missed something, loopify is fully ir-independent; so there
should be no problem with using it just now.

> and it also uses is
> iterate_fix_dominators() to update dominators. ATM, I intend to use
> that directly and come back to loopify() again during loop-unswitch ir
> cleanup.

iterate_fix_dominators is only used to fix dominators of (usually) few blocks
for that the dominators may be affected in a nontrivial way; it
definitely should be much faster than recomputing all dominators from
scratch.

Zdenek



More information about the Gcc-patches mailing list