public class DerivedScaledInductionVariable extends DerivedInductionVariable
InductionVariable.Direction
Modifier and Type | Field and Description |
---|---|
private ValueNode |
scale |
private ValueNode |
value |
base
loop
Constructor and Description |
---|
DerivedScaledInductionVariable(LoopEx loop,
InductionVariable base,
NegateNode value) |
DerivedScaledInductionVariable(LoopEx loop,
InductionVariable base,
ValueNode scale,
ValueNode 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 |
getScale() |
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() |
ValueNode |
valueNode()
Returns the value node that is described by this induction variable.
|
getBase, graph
extremumNode, getLoop
public DerivedScaledInductionVariable(LoopEx loop, InductionVariable base, ValueNode scale, ValueNode value)
public DerivedScaledInductionVariable(LoopEx loop, InductionVariable base, NegateNode value)
public ValueNode valueNode()
InductionVariable
valueNode
in class InductionVariable
public InductionVariable.Direction direction()
direction
in class InductionVariable
public ValueNode initNode()
InductionVariable
initNode
in class InductionVariable
public ValueNode strideNode()
InductionVariable
strideNode
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 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
public void deleteUnusedNodes()
InductionVariable
deleteUnusedNodes
in class InductionVariable