public final class JavaWriteNode extends AbstractWriteNode implements Lowerable, StateSplit, MemoryAccess, MemoryCheckpoint.Single
Node.ConstantNodeParameter, Node.InjectedNodeParameter, Node.Input, Node.NodeIntrinsic, Node.OptionalInput, Node.Successor, Node.ValueNumberableMemoryCheckpoint.Multi, MemoryCheckpoint.Single, MemoryCheckpoint.TypeAssertionHeapAccess.BarrierTypeDeoptimizingNode.DeoptAfter, DeoptimizingNode.DeoptBefore, DeoptimizingNode.DeoptDuring| Modifier and Type | Field and Description |
|---|---|
protected boolean |
compressible |
static NodeClass<JavaWriteNode> |
TYPE |
protected Kind |
writeKind |
initializationbarrierType, guard, location, nullCheckstateBeforenextNODE_LIST, NOT_ITERABLE, USE_UNSAFE_TO_CLONE, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges| Constructor and Description |
|---|
JavaWriteNode(Kind writeKind,
AddressNode address,
LocationIdentity location,
ValueNode value,
HeapAccess.BarrierType barrierType,
boolean compressible,
boolean initialization) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canNullCheck() |
Kind |
getWriteKind() |
boolean |
isCompressible() |
void |
lower(LoweringTool tool)
Expand this node into lower level nodes expressing the same semantics.
|
getLastLocationAccess, hasSideEffect, isAllowedUsageType, isInitialization, setLastLocationAccess, setStateAfter, stateAfter, valuecanDeoptimize, getAddress, getBarrierType, getGuard, getLocationIdentity, getNullCheck, setAddress, setGuard, setNullChecksetStateBefore, stateBeforeasNode, next, setNextasConstant, asJavaConstant, getKind, graph, inferStamp, 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, hasSideEffect, setStateAfter, stateAfterstatesgetLastLocationAccess, getLocationIdentity, setLastLocationAccessgetLocationIdentityasNodeasNodepublic static final NodeClass<JavaWriteNode> TYPE
protected final boolean compressible
public JavaWriteNode(Kind writeKind, AddressNode address, LocationIdentity location, ValueNode value, HeapAccess.BarrierType barrierType, boolean compressible, boolean initialization)
public void lower(LoweringTool tool)
Lowerablepublic boolean canNullCheck()
canNullCheck in interface Accesspublic Kind getWriteKind()
public boolean isCompressible()