This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Question about simplify_cond_and_lookup_avail_expr
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- To: dpatel at apple dot com
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 29 Nov 04 15:09:13 EST
- Subject: Re: Question about simplify_cond_and_lookup_avail_expr
Tree combiner is mentioned many times but I do not understand its role
clearly. What is it suppose to do?
The same as the RTL combiner, but on trees. ;-)
Basically, the idea (oversimplified) is to try to find a pair of statements
where the output of the first is the input of the second and do a macro
substitution replacing LHS of the first inside the second with the RHS of the
first, then trying to simplify the resulting expression in the hope that
it'll remain GIMPLE. If so, we've reduced by one the number of statements in
the function.
Of course, the same tricks with respect to "3->2 merging" done in RTL would
also apply here, though the making of PARALLELs would have no analog.