public final class JavaReadNode extends FixedAccessNode implements Lowerable, GuardingNode, Canonicalizable
Node.ConstantNodeParameter, Node.InjectedNodeParameter, Node.Input, Node.NodeIntrinsic, Node.OptionalInput, Node.Successor, Node.ValueNumberable
Canonicalizable.Binary<T extends Node>, Canonicalizable.BinaryCommutative<T extends Node>, Canonicalizable.Unary<T extends Node>
HeapAccess.BarrierType
DeoptimizingNode.DeoptAfter, DeoptimizingNode.DeoptBefore, DeoptimizingNode.DeoptDuring
Modifier and Type | Field and Description |
---|---|
protected boolean |
compressible |
protected jdk.internal.jvmci.meta.Kind |
readKind |
static NodeClass<JavaReadNode> |
TYPE |
barrierType, guard, location, nullCheck
stateBefore
next
NODE_LIST, NOT_ITERABLE, USE_UNSAFE_TO_CLONE, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges
Constructor and Description |
---|
JavaReadNode(jdk.internal.jvmci.meta.Kind readKind,
AddressNode address,
jdk.internal.jvmci.meta.LocationIdentity location,
HeapAccess.BarrierType barrierType,
boolean compressible) |
Modifier and Type | Method and Description |
---|---|
boolean |
canNullCheck() |
Node |
canonical(CanonicalizerTool tool) |
jdk.internal.jvmci.meta.Kind |
getReadKind() |
boolean |
isCompressible() |
void |
lower(LoweringTool tool)
Expand this node into lower level nodes expressing the same semantics.
|
canDeoptimize, getAddress, getBarrierType, getGuard, getLocationIdentity, getNullCheck, setAddress, setGuard, setNullCheck
setStateBefore, stateBefore
asNode, next, setNext
asConstant, asJavaConstant, getKind, graph, inferStamp, isAllowedUsageType, isConstant, isConstantPredicate, isNullConstant, setStamp, stamp, updateStamp
acceptInputs, 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, verifyInputs
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
asNode
asNode
states
public static final NodeClass<JavaReadNode> TYPE
protected final jdk.internal.jvmci.meta.Kind readKind
protected final boolean compressible
public JavaReadNode(jdk.internal.jvmci.meta.Kind readKind, AddressNode address, jdk.internal.jvmci.meta.LocationIdentity location, HeapAccess.BarrierType barrierType, boolean compressible)
public void lower(LoweringTool tool)
Lowerable
public boolean canNullCheck()
canNullCheck
in interface Access
public jdk.internal.jvmci.meta.Kind getReadKind()
public boolean isCompressible()
public Node canonical(CanonicalizerTool tool)
canonical
in interface Canonicalizable