public class AMD64AddressNode extends AddressNode implements Simplifiable, LIRLowerable
AddressNode.AddressNode.ConstantNodeParameter, Node.EdgeVisitor, Node.IndirectCanonicalization, Node.InjectedNodeParameter, Node.Input, Node.NodeInsertionStackTrace, Node.NodeIntrinsic, Node.NodeIntrinsicFactory, Node.OptionalInput, Node.Successor, Node.ValueNumberable| Modifier and Type | Field and Description |
|---|---|
static NodeClass<AMD64AddressNode> |
TYPE |
EMPTY_ARRAY, stampNODE_LIST, NOT_ITERABLE, TRACK_CREATION_POSITION, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges| Constructor and Description |
|---|
AMD64AddressNode(ValueNode base) |
AMD64AddressNode(ValueNode base,
ValueNode index) |
| Modifier and Type | Method and Description |
|---|---|
void |
canonicalizeIndex(SimplifierTool tool) |
void |
generate(NodeLIRBuilderTool gen) |
ValueNode |
getBase() |
int |
getDisplacement() |
ValueNode |
getIndex() |
long |
getMaxConstantDisplacement()
Constant that is the maximum displacement from the base and index for this address.
|
AMD64Address.Scale |
getScale() |
void |
setBase(ValueNode base) |
void |
setDisplacement(int displacement) |
void |
setIndex(ValueNode index) |
void |
setScale(AMD64Address.Scale scale) |
void |
simplify(SimplifierTool tool) |
asConstant, asJavaConstant, asNode, asSerializableConstant, checkReplaceAtUsagesInvariants, getStackKind, graph, hasUsagesOtherThan, inferStamp, isAllowedUsageType, isConstant, isConstantPredicate, isDefaultConstant, isIllegalConstant, isJavaConstant, isNullConstant, isSerializableConstant, recursivelyDataFlowEqualsUpTo, setStamp, stamp, updateStamp, updateUsagesInterfaceafterClone, applyInputs, applySuccessors, assertFalse, assertTrue, cfgPredecessors, cfgSuccessors, clearInputs, clearNodeSourcePosition, clearSuccessors, copyWithInputs, copyWithInputs, dataFlowEquals, dynamicNodeSizeEstimate, estimatedNodeCycles, estimatedNodeSize, fail, formatTo, getCreationPosition, getDebug, getDebugProperties, getDebugProperties, getInsertionPosition, getNodeClass, getNodeSourcePosition, getOptions, getUsageCount, hasExactlyOneUsage, hashCode, hasMoreThanOneUsage, hasNoUsages, hasOnlyUsagesOfType, hasUsages, hasUsagesOfType, inputPositions, inputs, isAlive, isDeleted, isUnregistered, markDeleted, maybeNotifyZeroUsages, modCount, predecessor, pushInputs, removeUsage, replaceAllInputs, replaceAndDelete, replaceAtAllUsages, replaceAtMatchingUsages, replaceAtPredecessor, replaceAtUsages, replaceAtUsages, replaceAtUsages, replaceAtUsages, replaceAtUsages, replaceAtUsagesAndDelete, replaceAtUsagesAndDelete, replaceFirstInput, replaceFirstSuccessor, safeDelete, setCreationPosition, setInsertionPosition, setNodeSourcePosition, singleUsage, successorPositions, successors, toString, toString, updateNodeSourcePosition, updatePredecessor, updateUsages, usages, valueEquals, verify, verifyEdges, verifyInputs, verifySourcePosition, withNodeSourcePositionpublic static final NodeClass<AMD64AddressNode> TYPE
public AMD64AddressNode(ValueNode base)
public void canonicalizeIndex(SimplifierTool tool)
public void generate(NodeLIRBuilderTool gen)
generate in interface LIRLowerablepublic ValueNode getBase()
getBase in class AddressNodepublic void setBase(ValueNode base)
public ValueNode getIndex()
getIndex in class AddressNodepublic void setIndex(ValueNode index)
public AMD64Address.Scale getScale()
public void setScale(AMD64Address.Scale scale)
public int getDisplacement()
public void setDisplacement(int displacement)
public long getMaxConstantDisplacement()
AddressNodegetMaxConstantDisplacement in class AddressNodepublic void simplify(SimplifierTool tool)
simplify in interface Simplifiable