public abstract class FloatingAccessNode extends FloatingGuardedNode implements Access, MemoryAccess
Node.ConstantNodeParameter, Node.InjectedNodeParameter, Node.Input, Node.NodeIntrinsic, Node.OptionalInput, Node.Successor, Node.ValueNumberableHeapAccess.BarrierType| Modifier and Type | Field and Description |
|---|---|
(package private) AddressNode |
address |
protected HeapAccess.BarrierType |
barrierType |
protected LocationIdentity |
location |
static NodeClass<FloatingAccessNode> |
TYPE |
guardNODE_LIST, NOT_ITERABLE, USE_UNSAFE_TO_CLONE, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges| Modifier | Constructor and Description |
|---|---|
protected |
FloatingAccessNode(NodeClass<? extends FloatingAccessNode> c,
AddressNode address,
LocationIdentity location,
Stamp stamp) |
protected |
FloatingAccessNode(NodeClass<? extends FloatingAccessNode> c,
AddressNode address,
LocationIdentity location,
Stamp stamp,
GuardingNode guard,
HeapAccess.BarrierType barrierType) |
| Modifier and Type | Method and Description |
|---|---|
abstract FixedAccessNode |
asFixedNode() |
boolean |
canNullCheck() |
AddressNode |
getAddress() |
HeapAccess.BarrierType |
getBarrierType()
Gets the write barrier type for that particular access.
|
LocationIdentity |
getLocationIdentity() |
getGuard, 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, verify, verifyEdges, verifyInputsclone, finalize, getClass, notify, notifyAll, wait, wait, waitasNode, getGuard, setGuardgetLastLocationAccess, setLastLocationAccesspublic static final NodeClass<FloatingAccessNode> TYPE
AddressNode address
protected final LocationIdentity location
protected HeapAccess.BarrierType barrierType
protected FloatingAccessNode(NodeClass<? extends FloatingAccessNode> c, AddressNode address, LocationIdentity location, Stamp stamp)
protected FloatingAccessNode(NodeClass<? extends FloatingAccessNode> c, AddressNode address, LocationIdentity location, Stamp stamp, GuardingNode guard, HeapAccess.BarrierType barrierType)
public AddressNode getAddress()
getAddress in interface Accesspublic LocationIdentity getLocationIdentity()
getLocationIdentity in interface AccessgetLocationIdentity in interface MemoryAccesspublic HeapAccess.BarrierType getBarrierType()
HeapAccessgetBarrierType in interface HeapAccesspublic boolean canNullCheck()
canNullCheck in interface Accesspublic abstract FixedAccessNode asFixedNode()