public final class DeoptimizeNode extends AbstractDeoptimizeNode implements Lowerable, LIRLowerable
Node.ConstantNodeParameter, Node.InjectedNodeParameter, Node.Input, Node.NodeIntrinsic, Node.OptionalInput, Node.Successor, Node.ValueNumberableDeoptimizingNode.DeoptAfter, DeoptimizingNode.DeoptBefore, DeoptimizingNode.DeoptDuring| Modifier and Type | Field and Description |
|---|---|
protected jdk.internal.jvmci.meta.DeoptimizationAction |
action |
protected int |
debugId |
static int |
DEFAULT_DEBUG_ID |
protected jdk.internal.jvmci.meta.DeoptimizationReason |
reason |
protected jdk.internal.jvmci.meta.JavaConstant |
speculation |
static NodeClass<DeoptimizeNode> |
TYPE |
stateBeforeNODE_LIST, NOT_ITERABLE, USE_UNSAFE_TO_CLONE, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges| Constructor and Description |
|---|
DeoptimizeNode(jdk.internal.jvmci.meta.DeoptimizationAction action,
jdk.internal.jvmci.meta.DeoptimizationReason reason) |
DeoptimizeNode(jdk.internal.jvmci.meta.DeoptimizationAction action,
jdk.internal.jvmci.meta.DeoptimizationReason reason,
int debugId,
jdk.internal.jvmci.meta.JavaConstant speculation,
FrameState stateBefore) |
DeoptimizeNode(jdk.internal.jvmci.meta.DeoptimizationAction action,
jdk.internal.jvmci.meta.DeoptimizationReason reason,
jdk.internal.jvmci.meta.JavaConstant speculation) |
| Modifier and Type | Method and Description |
|---|---|
jdk.internal.jvmci.meta.DeoptimizationAction |
action() |
static void |
deopt(jdk.internal.jvmci.meta.DeoptimizationAction action,
jdk.internal.jvmci.meta.DeoptimizationReason reason) |
void |
generate(NodeLIRBuilderTool gen) |
ValueNode |
getActionAndReason(jdk.internal.jvmci.meta.MetaAccessProvider metaAccess) |
int |
getDebugId() |
jdk.internal.jvmci.meta.JavaConstant |
getSpeculation() |
ValueNode |
getSpeculation(jdk.internal.jvmci.meta.MetaAccessProvider metaAccess) |
void |
lower(LoweringTool tool)
Expand this node into lower level nodes expressing the same semantics.
|
jdk.internal.jvmci.meta.DeoptimizationReason |
reason() |
canDeoptimize, setStateBefore, stateBeforeasConstant, 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, waitstatespublic static final int DEFAULT_DEBUG_ID
public static final NodeClass<DeoptimizeNode> TYPE
protected final jdk.internal.jvmci.meta.DeoptimizationAction action
protected final jdk.internal.jvmci.meta.DeoptimizationReason reason
protected final int debugId
protected final jdk.internal.jvmci.meta.JavaConstant speculation
public DeoptimizeNode(jdk.internal.jvmci.meta.DeoptimizationAction action, jdk.internal.jvmci.meta.DeoptimizationReason reason)
public DeoptimizeNode(jdk.internal.jvmci.meta.DeoptimizationAction action, jdk.internal.jvmci.meta.DeoptimizationReason reason, jdk.internal.jvmci.meta.JavaConstant speculation)
public DeoptimizeNode(jdk.internal.jvmci.meta.DeoptimizationAction action, jdk.internal.jvmci.meta.DeoptimizationReason reason, int debugId, jdk.internal.jvmci.meta.JavaConstant speculation, FrameState stateBefore)
public jdk.internal.jvmci.meta.DeoptimizationAction action()
public jdk.internal.jvmci.meta.DeoptimizationReason reason()
public void lower(LoweringTool tool)
Lowerablepublic int getDebugId()
public void generate(NodeLIRBuilderTool gen)
generate in interface LIRLowerablepublic ValueNode getActionAndReason(jdk.internal.jvmci.meta.MetaAccessProvider metaAccess)
getActionAndReason in class AbstractDeoptimizeNodepublic ValueNode getSpeculation(jdk.internal.jvmci.meta.MetaAccessProvider metaAccess)
getSpeculation in class AbstractDeoptimizeNodepublic jdk.internal.jvmci.meta.JavaConstant getSpeculation()
public static void deopt(jdk.internal.jvmci.meta.DeoptimizationAction action, jdk.internal.jvmci.meta.DeoptimizationReason reason)