- All Implemented Interfaces:
- LatticeElement
- Enclosing class:
- MaybeReachingVariableUse
static final class MaybeReachingVariableUse.ReachingUses
extends java.lang.Object
implements LatticeElement
May use definition lattice representation. It captures a product
lattice for each local (non-escaped) variable. The sub-lattice is
a n + 2 power set element lattice with all the Nodes in the program,
TOP and BOTTOM. This is better explained with an example:
Consider: A sub-lattice element representing the variable A represented
by { N_4, N_5} where N_x is a Node in the program. This implies at
that particular point in the program the content of A is "upward exposed"
at point N_4 and N_5.
Example:
A = 1;
...
N_3:
N_4: print(A);
N_5: y = A;
N_6: A = 1;
N_7: print(A);
At N_3, reads of A in {N_4, N_5} are said to be upward exposed.