org.jruby.compiler.ir.dataflow.analyses
Class BindingLoadPlacementNode
java.lang.Object
org.jruby.compiler.ir.dataflow.FlowGraphNode
org.jruby.compiler.ir.dataflow.analyses.BindingLoadPlacementNode
public class BindingLoadPlacementNode
- extends FlowGraphNode
Method Summary |
void |
addLoads()
|
boolean |
applyTransferFunction()
Compute "OUT/IN" for the current node! The choice of "IN/OUT" is determined by the direction of data flow. |
void |
buildDataFlowVars(Instr i)
Builds the data-flow variables (or facts) for a particular instruction. |
void |
compute_MEET(CFG.CFG_Edge edge,
FlowGraphNode pred)
"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. |
void |
init()
Initialize this data flow node for solving the current problem
This is done after building dataflow variables for the problem. |
void |
initSolnForNode()
Initialize this data flow node to compute the new solution
This is done before iteratively calling the MEET operator. |
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
BindingLoadPlacementNode
public BindingLoadPlacementNode(DataFlowProblem prob,
BasicBlock n)
init
public void init()
- Description copied from class:
FlowGraphNode
- Initialize this data flow node for solving the current problem
This is done after building dataflow variables for the problem.
- Overrides:
init
in class FlowGraphNode
buildDataFlowVars
public void buildDataFlowVars(Instr i)
- Description copied from class:
FlowGraphNode
- Builds the data-flow variables (or facts) for a particular instruction.
- Specified by:
buildDataFlowVars
in class FlowGraphNode
initSolnForNode
public void initSolnForNode()
- Description copied from class:
FlowGraphNode
- Initialize this data flow node to compute the new solution
This is done before iteratively calling the MEET operator.
- Specified by:
initSolnForNode
in class FlowGraphNode
compute_MEET
public void compute_MEET(CFG.CFG_Edge edge,
FlowGraphNode pred)
- Description copied from class:
FlowGraphNode
- "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.
- Specified by:
compute_MEET
in class FlowGraphNode
applyTransferFunction
public boolean applyTransferFunction()
- Description copied from class:
FlowGraphNode
- Compute "OUT/IN" for the current node! The choice of "IN/OUT" is determined by the direction of data flow.
OUT/IN = transfer-function(facts at start/end of node, instructions of current node processed in fwd/reverse dirn)
- Specified by:
applyTransferFunction
in class FlowGraphNode
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
addLoads
public void addLoads()
Copyright © 2002-2009 JRuby Team. All Rights Reserved.