public final class MembarNode extends FixedWithNextNode implements LIRLowerable, MemoryCheckpoint.Single
Node.ConstantNodeParameter, Node.InjectedNodeParameter, Node.Input, Node.NodeIntrinsic, Node.OptionalInput, Node.Successor, Node.ValueNumberableMemoryCheckpoint.Multi, MemoryCheckpoint.Single, MemoryCheckpoint.TypeAssertion| Modifier and Type | Field and Description |
|---|---|
protected int |
barriers |
protected jdk.internal.jvmci.meta.LocationIdentity |
location |
static NodeClass<MembarNode> |
TYPE |
nextNODE_LIST, NOT_ITERABLE, USE_UNSAFE_TO_CLONE, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges| Constructor and Description |
|---|
MembarNode(int barriers) |
MembarNode(int barriers,
jdk.internal.jvmci.meta.LocationIdentity location) |
| Modifier and Type | Method and Description |
|---|---|
void |
generate(NodeLIRBuilderTool generator) |
jdk.internal.jvmci.meta.LocationIdentity |
getLocationIdentity()
This method is used to determine which memory location is killed by this node.
|
static void |
memoryBarrier(int barriers) |
static void |
memoryBarrier(int barriers,
jdk.internal.jvmci.meta.LocationIdentity location) |
asNode, next, setNextasConstant, 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, verifyEdges, verifyInputsclone, finalize, getClass, notify, notifyAll, wait, wait, waitasNodepublic static final NodeClass<MembarNode> TYPE
protected final int barriers
protected final jdk.internal.jvmci.meta.LocationIdentity location
public MembarNode(int barriers)
public MembarNode(int barriers, jdk.internal.jvmci.meta.LocationIdentity location)
public jdk.internal.jvmci.meta.LocationIdentity getLocationIdentity()
MemoryCheckpoint.SingleLocationIdentity.any() will kill all memory locations.getLocationIdentity in interface MemoryCheckpoint.Singlepublic void generate(NodeLIRBuilderTool generator)
generate in interface LIRLowerablepublic static void memoryBarrier(int barriers)
public static void memoryBarrier(int barriers, jdk.internal.jvmci.meta.LocationIdentity location)