public final class WriteNode extends AbstractWriteNode implements LIRLowerable, Simplifiable, Virtualizable
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 |
|---|---|
static NodeClass<WriteNode> |
TYPE |
initialization, lastLocationAccess, stateAfter, valueaddress, barrierType, guard, location, nullCheckstateBeforenextNODE_LIST, NOT_ITERABLE, USE_UNSAFE_TO_CLONE, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges| Modifier | Constructor and Description |
|---|---|
|
WriteNode(AddressNode address,
jdk.internal.jvmci.meta.LocationIdentity location,
ValueNode value,
HeapAccess.BarrierType barrierType) |
|
WriteNode(AddressNode address,
jdk.internal.jvmci.meta.LocationIdentity location,
ValueNode value,
HeapAccess.BarrierType barrierType,
boolean initialization) |
|
WriteNode(AddressNode address,
jdk.internal.jvmci.meta.LocationIdentity location,
ValueNode value,
HeapAccess.BarrierType barrierType,
GuardingNode guard,
boolean initialization) |
private |
WriteNode(ValueNode address,
jdk.internal.jvmci.meta.LocationIdentity location,
ValueNode value,
HeapAccess.BarrierType barrierType) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canNullCheck() |
void |
generate(NodeLIRBuilderTool gen) |
void |
simplify(SimplifierTool tool) |
void |
virtualize(VirtualizerTool tool)
A node class can implement this method to convey information about what its effect would be
if some of its inputs were virtualized.
|
static void |
writeMemory(AddressNode.Address address,
jdk.internal.jvmci.meta.LocationIdentity location,
Object value,
HeapAccess.BarrierType barrierType) |
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, successors, toString, toString, updatePredecessor, updateUsages, updateUsagesInterface, usages, valueEquals, verifyEdges, verifyInputsclone, finalize, getClass, notify, notifyAll, wait, wait, waitasNodestatesgetLocationIdentitygetLocationIdentityasNodeasNodeprivate WriteNode(ValueNode address, jdk.internal.jvmci.meta.LocationIdentity location, ValueNode value, HeapAccess.BarrierType barrierType)
public WriteNode(AddressNode address, jdk.internal.jvmci.meta.LocationIdentity location, ValueNode value, HeapAccess.BarrierType barrierType)
public WriteNode(AddressNode address, jdk.internal.jvmci.meta.LocationIdentity location, ValueNode value, HeapAccess.BarrierType barrierType, boolean initialization)
public WriteNode(AddressNode address, jdk.internal.jvmci.meta.LocationIdentity location, ValueNode value, HeapAccess.BarrierType barrierType, GuardingNode guard, boolean initialization)
public void generate(NodeLIRBuilderTool gen)
generate in interface LIRLowerablepublic void simplify(SimplifierTool tool)
simplify in interface Simplifiablesimplify in class Nodepublic static void writeMemory(AddressNode.Address address, jdk.internal.jvmci.meta.LocationIdentity location, Object value, HeapAccess.BarrierType barrierType)
public void virtualize(VirtualizerTool tool)
Virtualizablevirtualize in interface Virtualizabletool - the tool used to describe the effects of this nodepublic boolean canNullCheck()
canNullCheck in interface Access