Tue, 03 Jul 2007 20:59:58 -0700

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 |

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?

Post a followup to this message

Return to the
comp.compilers page.

Search the
comp.compilers archives again.