public class GuardedUnsafeLoadNode extends RawLoadNode implements GuardedNode
Node.ConstantNodeParameter, Node.EdgeVisitor, Node.IndirectCanonicalization, Node.InjectedNodeParameter, Node.Input, Node.NodeInsertionStackTrace, Node.NodeIntrinsic, Node.NodeIntrinsicFactory, Node.OptionalInput, Node.Successor, Node.ValueNumberable
Canonicalizable.Binary<T extends Node>, Canonicalizable.BinaryCommutative<T extends Node>, Canonicalizable.Ternary<T extends Node>, Canonicalizable.Unary<T extends Node>
Modifier and Type | Field and Description |
---|---|
protected GuardingNode |
guard |
static NodeClass<GuardedUnsafeLoadNode> |
TYPE |
accessKind, forceAnyLocation, locationIdentity
next
NODE_LIST, NOT_ITERABLE, TRACK_CREATION_POSITION, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges
Constructor and Description |
---|
GuardedUnsafeLoadNode(ValueNode object,
ValueNode offset,
jdk.vm.ci.meta.JavaKind accessKind,
org.graalvm.word.LocationIdentity locationIdentity,
ValueNode guard) |
Modifier and Type | Method and Description |
---|---|
GuardingNode |
getGuard() |
static Object |
guardedLoad(Object object,
long offset,
jdk.vm.ci.meta.JavaKind kind,
org.graalvm.word.LocationIdentity locationIdentity,
GuardingNode guard) |
void |
setGuard(GuardingNode guard) |
canonical, cloneAsArrayAccess, cloneAsFieldAccess, isVolatile, load, virtualize
accessKind, cloneAsFieldAccess, getLocationIdentity, isAnyLocationForced, object, offset
asNode, next, setNext
asConstant, asJavaConstant, asSerializableConstant, getStackKind, graph, hasUsagesOtherThan, inferStamp, isAllowedUsageType, isConstant, isConstantPredicate, isDefaultConstant, isIllegalConstant, isJavaConstant, isNullConstant, isSerializableConstant, replaceAtAllUsages, replaceAtUsages, setStamp, stamp, updateStamp
afterClone, applyInputs, applySuccessors, assertFalse, assertTrue, cfgPredecessors, cfgSuccessors, clearInputs, clearNodeSourcePosition, clearSuccessors, copyWithInputs, copyWithInputs, dataFlowEquals, estimatedNodeCycles, estimatedNodeSize, fail, formatTo, getCreationPosition, getDebug, getDebugProperties, getDebugProperties, getInsertionPosition, getNodeClass, getNodeSourcePosition, getOptions, getUsageCount, hasExactlyOneUsage, hashCode, hasMoreThanOneUsage, hasNoUsages, hasOnlyUsagesOfType, hasUsages, inputPositions, inputs, isAlive, isDeleted, isUnregistered, markDeleted, maybeNotifyZeroUsages, modCount, predecessor, pushInputs, removeUsage, replaceAllInputs, replaceAndDelete, replaceAtMatchingUsages, replaceAtPredecessor, replaceAtUsages, replaceAtUsages, replaceAtUsages, replaceAtUsages, replaceAtUsagesAndDelete, replaceAtUsagesAndDelete, replaceFirstInput, replaceFirstInput, replaceFirstSuccessor, safeDelete, setCreationPosition, setInsertionPosition, setNodeSourcePosition, simplify, successorPositions, successors, toString, toString, updateNodeSourcePosition, updatePredecessor, updateUsages, updateUsagesInterface, usages, valueEquals, verifyEdges, verifyInputs, verifySourcePosition, withNodeSourcePosition
clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait
asNode
public static final NodeClass<GuardedUnsafeLoadNode> TYPE
protected GuardingNode guard
public GuardingNode getGuard()
getGuard
in interface GuardedNode
public void setGuard(GuardingNode guard)
setGuard
in interface GuardedNode
public static Object guardedLoad(Object object, long offset, jdk.vm.ci.meta.JavaKind kind, org.graalvm.word.LocationIdentity locationIdentity, GuardingNode guard)