[tree-ssa] DCE and conditionals

Diego Novillo dnovillo@redhat.com
Mon May 5 20:45:00 GMT 2003


On Mon, 2003-05-05 at 16:33, Andrew MacLeod wrote:

> If a_1 and a_0 do not coalesce, then a_5 needs to have a copy on one of
> the 2 branches of the conditional in order to calculate the PHI node. 
> And in order to do that, you have to know what the original condition
> was.
> 
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.


Diego.



More information about the Gcc mailing list