| Modifier and Type | Field and Description |
|---|---|
| private BitSet | |
| private BitSet | |
| private BitSet | |
| private int |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| private void | |
| public void | applyPreMeetHandler()
Implements abstract org. Initialize this data flow node to compute the new solution This is done before iteratively calling the MEET operator. |
| public void | applyTransferFunction(Instr i)
Implements abstract org. Apply transfer function to the instruction |
| public void | buildDataFlowVars(Instr i)
Implements abstract org. Builds the data-flow variables (or facts) for a particular instruction. |
| public void | compute_MEET(Edge<T extends ExplicitVertexID, U> e, LiveVariableNode pred)
Implements abstract org. "MEET" current solution of "IN/OUT" with "OUT/IN(pred)", where "pred" is a predecessor of the current node! |
| public void | finalizeSolution()
Overrides org. Any required cleanup of state after applying transfer function |
| pack-priv BitSet | |
| pack-priv BitSet | |
| public void | init()
Overrides org. Initialize this data flow node for solving the current problem This is done after building dataflow variables for the problem. |
| public void | initSolution()
Overrides org. Any setting up of state/initialization before applying transfer function |
| private void | |
| private void | |
| pack-priv void | |
| private void | |
| public boolean | solutionChanged()
Implements abstract org. Did dataflow solution for this node change from last time? |
| public String |
| in | back to summary |
|---|---|
| private BitSet in | |
| living | back to summary |
|---|---|
| private BitSet living | |
| out | back to summary |
|---|---|
| private BitSet out | |
| setSize | back to summary |
|---|---|
| private int setSize | |
| LiveVariableNode | back to summary |
|---|---|
| public LiveVariableNode(LiveVariablesProblem prob, BasicBlock n) | |
| addDFVar | back to summary |
|---|---|
| private void addDFVar(Variable v) | |
| applyPreMeetHandler | back to summary |
|---|---|
| public void applyPreMeetHandler() Implements abstract org. Doc from org. Initialize this data flow node to compute the new solution This is done before iteratively calling the MEET operator.
| |
| applyTransferFunction | back to summary |
|---|---|
| public void applyTransferFunction(Instr i) Implements abstract org. Doc from org. Apply transfer function to the instruction
| |
| buildDataFlowVars | back to summary |
|---|---|
| public void buildDataFlowVars(Instr i) Implements abstract org. Doc from org. Builds the data-flow variables (or facts) for a particular instruction.
| |
| compute_MEET | back to summary |
|---|---|
| public void compute_MEET(Edge<T extends ExplicitVertexID, U> e, LiveVariableNode pred) Implements abstract org. Doc from org. "MEET" current solution of "IN/OUT" with "OUT/IN(pred)", where "pred" is a predecessor of the current node! The choice of "IN/OUT" is determined by the direction of data flow.
| |
| finalizeSolution | back to summary |
|---|---|
| public void finalizeSolution() Overrides org. Doc from org. Any required cleanup of state after applying transfer function
| |
| getLiveInBitSet | back to summary |
|---|---|
| pack-priv BitSet getLiveInBitSet() | |
| getLiveOutBitSet | back to summary |
|---|---|
| pack-priv BitSet getLiveOutBitSet() | |
| init | back to summary |
|---|---|
| public void init() Overrides org. Doc from org. Initialize this data flow node for solving the current problem This is done after building dataflow variables for the problem.
| |
| initSolution | back to summary |
|---|---|
| public void initSolution() Overrides org. Doc from org. Any setting up of state/initialization before applying transfer function
| |
| makeOutExceptionVariablesLiving | back to summary |
|---|---|
| private void makeOutExceptionVariablesLiving() Collect variables live out of the exception target node. Since this instr. can directly jump to the rescue block (or scope exit) without executing the rest of the instructions in this bb, we have a control-flow edge from this instr. to that block. Since we dont want to add a control-flow edge from pretty much every instr. to the rescuer/exit BB, we are handling it implicitly here. | |
| markAllVariablesLive | back to summary |
|---|---|
| private void markAllVariablesLive(LiveVariablesProblem lvp, Collection<? extends Variable> variableList) | |
| markDeadInstructions | back to summary |
|---|---|
| pack-priv void markDeadInstructions() | |
| markVariableLive | back to summary |
|---|---|
| private void markVariableLive(LiveVariablesProblem lvp, Variable x) | |
| solutionChanged | back to summary |
|---|---|
| public boolean solutionChanged() Implements abstract org. Doc from org. Did dataflow solution for this node change from last time?
| |
| toString | back to summary |
|---|---|
| public String toString() Overrides java. Doc from java. Returns a string representation of the object.
Satisfying this method's contract implies a non- | |