private class FlowSensitiveInlineVariables.Candidate
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private Node |
def |
private MustBeReachingVariableDef.Definition |
defMetadata |
private int |
numUsesWithinCfgNode |
private Node |
use |
private Node |
useCfgNode |
private java.lang.String |
varName |
Constructor and Description |
---|
Candidate(java.lang.String varName,
MustBeReachingVariableDef.Definition defMetadata,
Node use,
Node useCfgNode) |
Modifier and Type | Method and Description |
---|---|
private boolean |
canInline(Scope scope) |
private Node |
getDefCfgNode() |
private void |
getDefinition(Node n)
Set the def node
|
private void |
getNumUseInUseCfgNode(Node cfgNode)
Computes the number of uses of the variable varName and store it in
numUseWithinUseCfgNode.
|
private void |
inlineVariable()
Actual transformation.
|
private final java.lang.String varName
private Node def
private final MustBeReachingVariableDef.Definition defMetadata
private final Node use
private final Node useCfgNode
private int numUsesWithinCfgNode
Candidate(java.lang.String varName, MustBeReachingVariableDef.Definition defMetadata, Node use, Node useCfgNode)
private Node getDefCfgNode()
private boolean canInline(Scope scope)
private void inlineVariable()
private void getDefinition(Node n)
n
- A node that has a corresponding CFG node in the CFG.private void getNumUseInUseCfgNode(Node cfgNode)