public abstract class ControlSplitNode extends FixedNode implements IterableNodeType
ControlSplitNode
is a base class for all instructions that split the control flow
(ie. have more than one successor).Node.ConstantNodeParameter, Node.InjectedNodeParameter, Node.Input, Node.NodeIntrinsic, Node.OptionalInput, Node.Successor, Node.ValueNumberable
Modifier and Type | Field and Description |
---|---|
static NodeClass<ControlSplitNode> |
TYPE |
NODE_LIST, NOT_ITERABLE, USE_UNSAFE_TO_CLONE, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges
Modifier | Constructor and Description |
---|---|
protected |
ControlSplitNode(NodeClass<? extends ControlSplitNode> c,
Stamp stamp) |
Modifier and Type | Method and Description |
---|---|
abstract AbstractBeginNode |
getPrimarySuccessor()
Primary successor of the control split.
|
abstract double |
probability(AbstractBeginNode successor) |
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
public static final NodeClass<ControlSplitNode> TYPE
protected ControlSplitNode(NodeClass<? extends ControlSplitNode> c, Stamp stamp)
public abstract double probability(AbstractBeginNode successor)
public abstract AbstractBeginNode getPrimarySuccessor()