This is the mail archive of the gcc@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] COND_EXPR lowering preview


On Fri, 2003-08-29 at 15:08, law@redhat.com wrote:
> In message <1062014434.4452.15.camel@frodo.toronto.redhat.com>, Diego Novillo w
>
> 
>  > I guess we can always do the traditional DCE and
>  >build dominance frontiers in the reverse CFG (Cytron's original
>  >SSA-DCE).
> ?!?  No need.  We use the same code we have today with a couple changes.
> 
>  1. We mark COND_EXPRs as inherently necessary.
> 
>  2. We remove the code which removes COND_EXPRs from tree-ssa-dce.
> 
> Now there's still an unanswered question -- which of the different DCE
> schemes is actually the most appropriate/fastest.
> 
> We we've got in tree-ssa-dce.c is built around the idea that we'll be
> removing control structures, which I'm pretty sure we're not going to be
> doing in DCE long term.   So are there other approaches to DCE which
> are going to have better performance properties and possibly be a little
> simpler?
> 

Is it? If we mark all the control stmts as necessary, and remove our
control flow checking code, you are left with something which seems
fairly  minimal to me.. A pass through the IL to see whats needed, and
then visit any stmts which are forced as necessary by other stms which
are necessary... (the worklist).  You'd never visit any stmt more than
twice, and you never have to go hunting for anything.  control stmts
would never be looked at again.

Andrew




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