public class DerivedOffsetInductionVariable extends DerivedInductionVariable
InductionVariable.Direction
Modifier and Type | Field and Description |
---|---|
private ValueNode |
offset |
private BinaryArithmeticNode<?> |
value |
base
loop
Constructor and Description |
---|
DerivedOffsetInductionVariable(LoopEx loop,
InductionVariable base,
ValueNode offset,
BinaryArithmeticNode<?> value) |
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) |
ValueNode |
getOffset() |
ValueNode |
initNode()
Returns the node that gives the initial value of this induction variable.
|
boolean |
isConstantExtremum() |
boolean |
isConstantInit() |
boolean |
isConstantStride() |
private long |
op(long b,
long o) |
private ValueNode |
op(ValueNode b,
ValueNode o) |
ValueNode |
strideNode()
Returns the stride of the induction variable.
|
String |
toString() |
ValueNode |
valueNode()
Returns the value node that is described by this induction variable.
|
getBase, graph
extremumNode, getLoop
private final BinaryArithmeticNode<?> value
public DerivedOffsetInductionVariable(LoopEx loop, InductionVariable base, ValueNode offset, BinaryArithmeticNode<?> value)
public InductionVariable.Direction direction()
direction
in class InductionVariable
public ValueNode valueNode()
InductionVariable
valueNode
in class InductionVariable
public boolean isConstantInit()
isConstantInit
in class InductionVariable
public boolean isConstantStride()
isConstantStride
in class InductionVariable
public long constantInit()
constantInit
in class InductionVariable
public long constantStride()
constantStride
in class InductionVariable
public ValueNode initNode()
InductionVariable
initNode
in class InductionVariable
public ValueNode strideNode()
InductionVariable
strideNode
in class InductionVariable
public ValueNode extremumNode(boolean assumePositiveTripCount, Stamp stamp)
extremumNode
in class InductionVariable
public ValueNode exitValueNode()
InductionVariable
exitValueNode
in class InductionVariable
public boolean isConstantExtremum()
isConstantExtremum
in class InductionVariable
public long constantExtremum()
constantExtremum
in class InductionVariable
private long op(long b, long o)
public void deleteUnusedNodes()
InductionVariable
deleteUnusedNodes
in class InductionVariable