public class BasicInductionVariable extends InductionVariable
InductionVariable.Direction| Modifier and Type | Field and Description |
|---|---|
private ValueNode |
init |
private BinaryArithmeticNode<?> |
op |
private ValuePhiNode |
phi |
private ValueNode |
rawStride |
loop| Constructor and Description |
|---|
BasicInductionVariable(LoopEx loop,
ValuePhiNode phi,
ValueNode init,
ValueNode rawStride,
BinaryArithmeticNode<?> op) |
| Modifier and Type | Method and Description |
|---|---|
long |
constantExtremum() |
long |
constantInit() |
long |
constantStride() |
void |
deleteUnusedNodes()
Deletes any nodes created within the scope of this object that have no usages.
|
InductionVariable.Direction |
direction() |
ValueNode |
exitValueNode()
Returns the exit value of the induction variable.
|
ValueNode |
extremumNode(boolean assumePositiveTripCount,
Stamp stamp) |
BinaryArithmeticNode<?> |
getOp() |
StructuredGraph |
graph() |
ValueNode |
initNode()
Returns the node that gives the initial value of this induction variable.
|
boolean |
isConstantExtremum() |
boolean |
isConstantInit() |
boolean |
isConstantStride() |
ValueNode |
strideNode()
Returns the stride of the induction variable.
|
String |
toString() |
ValuePhiNode |
valueNode()
Returns the value node that is described by this induction variable.
|
extremumNode, getLoopprivate final ValuePhiNode phi
private final BinaryArithmeticNode<?> op
public BasicInductionVariable(LoopEx loop, ValuePhiNode phi, ValueNode init, ValueNode rawStride, BinaryArithmeticNode<?> op)
public StructuredGraph graph()
graph in class InductionVariablepublic BinaryArithmeticNode<?> getOp()
public InductionVariable.Direction direction()
direction in class InductionVariablepublic ValuePhiNode valueNode()
InductionVariablevalueNode in class InductionVariablepublic ValueNode initNode()
InductionVariableinitNode in class InductionVariablepublic ValueNode strideNode()
InductionVariablestrideNode in class InductionVariablepublic boolean isConstantInit()
isConstantInit in class InductionVariablepublic boolean isConstantStride()
isConstantStride in class InductionVariablepublic long constantInit()
constantInit in class InductionVariablepublic long constantStride()
constantStride in class InductionVariablepublic ValueNode extremumNode(boolean assumePositiveTripCount, Stamp stamp)
extremumNode in class InductionVariablepublic ValueNode exitValueNode()
InductionVariableexitValueNode in class InductionVariablepublic boolean isConstantExtremum()
isConstantExtremum in class InductionVariablepublic long constantExtremum()
constantExtremum in class InductionVariablepublic void deleteUnusedNodes()
InductionVariabledeleteUnusedNodes in class InductionVariable