This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] RFC: Making control flow more explicit
- From: law at redhat dot com
- To: Zdenek Dvorak <rakdver at atrey dot karlin dot mff dot cuni dot cz>
- Cc: Diego Novillo <dnovillo at redhat dot com>, Andrew Macleod <amacleod at redhat dot com>, Steven Bosscher <s dot bosscher at student dot tudelft dot nl>, Daniel Berlin <dberlin at dberlin dot org>, gcc mailing list <gcc at gcc dot gnu dot org>
- Date: Mon, 11 Aug 2003 15:24:30 -0600
- Subject: Re: [tree-ssa] RFC: Making control flow more explicit
- Reply-to: law at redhat dot com
In message <20030811201532.GA14471@atrey.karlin.mff.cuni.cz>, Zdenek Dvorak wri
tes:
>Hello,
>
>> > I am not really sure what is the exact meaning of the parent. Can't you
>> > run into problems in cases like
>> >
>> > if (c1)
>> > goto bla;
>> >
>> > if (c2)
>> > {
>> > something;
>> > bla:
>> > something_else;
>> > }
>> > ?
>> >
>> You shouldn't. What would be the dead statement here?
>
>sorry, I did not really think about what I write into the example.
>What I wanted to point out is that with presence of gotos "parent"
>loses sense, so it has to be handled somehow anyway (or if it is not,
>something is wrong).
The gotos won't cause any fundamental problems. DCE knows that it
must walk backwards through the GOTO and mark the parents of the GOTO.
>It should not be; it is just some playing with dominators and
>post-dominators, isn't it?
Computing the post-dominators along takes nearly as much time as the
rest of the DCE engine.
But as I said before, DCE can code with the kind of code you're likely to
be generating.
jeff