Module 15: Reaching Definition
  Lecture 29: Reaching Definition
 


Therefore,
out = gen U (in prsv) for all i
out = gen (in V prsv) for all i

in(i) = S out(j) for all predecessors of i
in(i) = W out(j) for all predecessors of i

Taxonomy of Dataflow Problems

Categorized along several dimensions

  • The information they are designed to provide
  • The direction of flow
  • Tonfluence operator

Techniques

  • Iterative dataflow analysis
  • Control tree based method using intervals
  • Control tree based method using structural analysis

Four Kinds of Dataflow Problems

Four varieties are distinguished by two orthogonal characteristic

  • The operator used for confluence or divergence
  • Data flows backward or forward

Transfer Function

  • In forward dataflow out(B) is a transfer function of in(B)
  • In backward dataflow in(B) is a transfer function of out(B)
out = (in − kill) [ gen