public final class FloatingReadNode extends FloatingAccessNode implements LIRLowerable, Canonicalizable
Node.ConstantNodeParameter, Node.InjectedNodeParameter, Node.Input, Node.NodeIntrinsic, Node.OptionalInput, Node.Successor, Node.ValueNumberableCanonicalizable.Binary<T extends Node>, Canonicalizable.BinaryCommutative<T extends Node>, Canonicalizable.Unary<T extends Node>HeapAccess.BarrierType| Modifier and Type | Field and Description |
|---|---|
(package private) MemoryNode |
lastLocationAccess |
static NodeClass<FloatingReadNode> |
TYPE |
address, barrierType, locationguardNODE_LIST, NOT_ITERABLE, USE_UNSAFE_TO_CLONE, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges| Constructor and Description |
|---|
FloatingReadNode(AddressNode address,
jdk.internal.jvmci.meta.LocationIdentity location,
MemoryNode lastLocationAccess,
Stamp stamp) |
FloatingReadNode(AddressNode address,
jdk.internal.jvmci.meta.LocationIdentity location,
MemoryNode lastLocationAccess,
Stamp stamp,
GuardingNode guard) |
FloatingReadNode(AddressNode address,
jdk.internal.jvmci.meta.LocationIdentity location,
MemoryNode lastLocationAccess,
Stamp stamp,
GuardingNode guard,
HeapAccess.BarrierType barrierType) |
| Modifier and Type | Method and Description |
|---|---|
FixedAccessNode |
asFixedNode() |
Node |
canonical(CanonicalizerTool tool) |
void |
generate(NodeLIRBuilderTool gen) |
MemoryNode |
getLastLocationAccess() |
void |
setLastLocationAccess(MemoryNode newlla) |
boolean |
verify() |
canNullCheck, getAddress, getBarrierType, getLocationIdentitygetGuard, setGuardasNodeasConstant, asJavaConstant, getKind, graph, inferStamp, isAllowedUsageType, isConstant, isConstantPredicate, isNullConstant, setStamp, stamp, updateStampacceptInputs, acceptSuccessors, afterClone, assertFalse, assertTrue, cfgPredecessors, cfgSuccessors, clearInputs, clearSuccessors, copyWithInputs, copyWithInputs, equals, fail, formatTo, getDebugProperties, getDebugProperties, getId, getNodeClass, getUsageAt, getUsageCount, hashCode, hasNoUsages, hasUsages, inputs, isAlive, isDeleted, markDeleted, modCount, newIdentityMap, newIdentityMap, newIdentityMap, newMap, newMap, newMap, newSet, newSet, predecessor, pushInputs, removeUsage, replaceAndDelete, replaceAtMatchingUsages, replaceAtPredecessor, replaceAtUsages, replaceAtUsages, replaceAtUsages, replaceFirstInput, replaceFirstSuccessor, safeDelete, simplify, successors, toString, toString, updatePredecessor, updateUsages, updateUsagesInterface, usages, valueEquals, verifyEdges, verifyInputsclone, finalize, getClass, notify, notifyAll, wait, wait, waitasNode, getGuard, setGuardpublic static final NodeClass<FloatingReadNode> TYPE
MemoryNode lastLocationAccess
public FloatingReadNode(AddressNode address, jdk.internal.jvmci.meta.LocationIdentity location, MemoryNode lastLocationAccess, Stamp stamp)
public FloatingReadNode(AddressNode address, jdk.internal.jvmci.meta.LocationIdentity location, MemoryNode lastLocationAccess, Stamp stamp, GuardingNode guard)
public FloatingReadNode(AddressNode address, jdk.internal.jvmci.meta.LocationIdentity location, MemoryNode lastLocationAccess, Stamp stamp, GuardingNode guard, HeapAccess.BarrierType barrierType)
public MemoryNode getLastLocationAccess()
getLastLocationAccess in interface MemoryAccesspublic void setLastLocationAccess(MemoryNode newlla)
setLastLocationAccess in interface MemoryAccessnewlla - the MemoryNode that represents the last kill of the locationpublic void generate(NodeLIRBuilderTool gen)
generate in interface LIRLowerablepublic Node canonical(CanonicalizerTool tool)
canonical in interface Canonicalizablepublic FixedAccessNode asFixedNode()
asFixedNode in class FloatingAccessNode