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] DCE and conditionals


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


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