Related articles |
---|
Dominance frontier example in "Engineering a Compiler" rayiner@gmail.com (Rayiner Hashem) (2007-06-19) |
Re: Dominance frontier example in "Engineering a Compiler" klvnraju@gmail.com (Raj) (2007-07-03) |
Re: Dominance frontier example in "Engineering a Compiler" rayiner@gmail.com (Rayiner Hashem) (2007-07-03) |
Re: Dominance frontier example in Engineering a Compiler mstrout@cs.colostate.edu (Michelle Strout) (2007-07-05) |
From: | Rayiner Hashem <rayiner@gmail.com> |
Newsgroups: | comp.compilers |
Date: | Tue, 03 Jul 2007 20:59:58 -0700 |
Organization: | Compilers Central |
References: | 07-06-04007-07-010 |
Keywords: | analysis |
Posted-Date: | 04 Jul 2007 20:35:53 EDT |
On Jul 3, 6:12 pm, Raj <klvnr...@gmail.com> wrote:
> B1 cannot be dominance frontier of itself.
> See the definition:
> A definition at n forces a X-function at m iff
> n not DOM(m) but n DOM(p) for some p preds(m)
>
> here, in your case
> n=m=B1
> and n DOM(m) (according to definition n should not belong to DOM(m))
That definition precludes a node from being in its own dominance
frontier, but then what about a self-loop?
entry:
a = 1
loop:
a = a +1
if a < 10 goto loop, otherwise goto exit
exit:
ret a
The only two definitions of a are in entry and loop, and entry
dominates everything, so DF(entry) = 0, so the only way the phi-node
gets inserted properly is if DF(loop) = {loop}, right?
Return to the
comp.compilers page.
Search the
comp.compilers archives again.