This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] DCE and conditionals
- From: law at redhat dot com
- To: Diego Novillo <dnovillo at redhat dot com>
- Cc: Andrew Macleod <amacleod at redhat dot com>, gcc mailing list <gcc at gcc dot gnu dot org>
- Date: Mon, 05 May 2003 14:57:46 -0600
- Subject: Re: [tree-ssa] DCE and conditionals
- Reply-to: law at redhat dot com
In message <1052167541.2909.116.camel@frodo.toronto.redhat.com>, Diego Novillo
writes:
>Ah, yes. So, keep the conditional expression. After you've brought the
>program out of SSA form, run the linearizer once more. And, this time,
>you untie its hands and let it trash COND_EXPRs that have both arms
>empty. Similarly with other empty blocks that couldn't be removed
>before because of PHI nodes.
>
>
>> And in order for that to be effective, we
>> should look at phi removal when possible since thats what ends up
>> keeping the conditions alive...
>>
>PHIs that have all their arguments the same can be easily checked in the
>linearizer.
Note that PHI optimization/removal is pretty simple, except for one
little problem. Specifically when there is a cycle in the PHI nodes.
I've got skeleton code to do PHI -> copy transformations here, but
there wasn't much point in doing anything with it until we support
handling overlapping lifetimes.
Jeff