[tree-ssa] Insert on edge comment
Michael Matz
matz@suse.de
Fri May 30 23:31:00 GMT 2003
Hi,
On Fri, 30 May 2003 law@redhat.com wrote:
> In tree-ssa you have to keep the control nesting stuff correct in
> addition to inserting the new code and redirecting the jumps (and the
> jumps may be implicit in the control structures rather than explicit in
> the IR).
I'm sure you know. But this has serious implications for any code moving
optimization like PRE. For those being able to split edges is crucial.
I.e. I hope the (obivously) complicated process to implement it is
worthwhile ;-)
Btw. I dislike any implicit knowledge ;) It tends to make things hard.
> I don't think anyone is saying it's impossible, it just has more
> complications than doing splitting on a linear form such as RTL.
Hmm. Does this mean, that for instance this expression:
a/b*c+f(g,h(i))
is represented as one tree (seen from the top), which magically has three
to five (depending on how * and + are defined) outgoing "edges", which
refer to the following statement resp. the reached exception handler?
Let's say it this way: ugh. Remind me again: why would we want to do
basic block based optimizations on such an IR? I'm not pessimistic yet,
but hiding control flow in this way seems wrong to me, and I would like to
learn the reasons why it isn't.
Ciao,
Michael.
More information about the Gcc
mailing list