public final class ExceptionObjectNode extends BeginStateSplitNode implements Lowerable, SingleMemoryKill, DeoptimizingNode.DeoptAfter
Node.ConstantNodeParameter, Node.EdgeVisitor, Node.IndirectCanonicalization, Node.InjectedNodeParameter, Node.Input, Node.NodeInsertionStackTrace, Node.NodeIntrinsic, Node.NodeIntrinsicFactory, Node.OptionalInput, Node.Successor, Node.ValueNumberableMemoryKill.NoLocationDeoptimizingNode.DeoptAfter, DeoptimizingNode.DeoptBefore, DeoptimizingNode.DeoptDuring| Modifier and Type | Field and Description |
|---|---|
static NodeClass<ExceptionObjectNode> |
TYPE |
stateAfternextEMPTY_ARRAY, stampNODE_LIST, NOT_ITERABLE, TRACK_CREATION_POSITION, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdgesMULTI_KILL_NO_LOCATION, NO_LOCATION| Constructor and Description |
|---|
ExceptionObjectNode(MetaAccessProvider metaAccess) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
canDeoptimize()
Determines if this node needs deoptimization information.
|
org.graalvm.word.LocationIdentity |
getKilledLocationIdentity()
This method is used to determine which memory location is killed by this node.
|
boolean |
hasSideEffect()
An exception handler is an entry point to a method from the runtime and so represents an
instruction that cannot be re-executed.
|
void |
lower(LoweringTool tool)
Expand this node into lower level nodes expressing the same semantics.
|
boolean |
verify() |
setStateAfter, stateAfteranchored, generate, getBlockNodes, guards, hasAnchored, hasSpeculationFence, isUsedAsGuardInput, prepareDelete, prepareDelete, prevBegin, setHasSpeculationFenceasFixedWithNextNode, next, setNextasFixedNodeasConstant, asJavaConstant, asNode, asSerializableConstant, checkReplaceAtUsagesInvariants, getStackKind, graph, hasUsagesOtherThan, inferStamp, isAllowedUsageType, isConstant, isConstantPredicate, isDefaultConstant, isIllegalConstant, isJavaConstant, isNullConstant, isSerializableConstant, recursivelyDataFlowEqualsUpTo, setStamp, stamp, updateStamp, updateUsagesInterfaceafterClone, applyInputs, applySuccessors, assertFalse, assertTrue, cfgPredecessors, cfgSuccessors, clearInputs, clearNodeSourcePosition, clearSuccessors, copyWithInputs, copyWithInputs, dataFlowEquals, dynamicNodeSizeEstimate, estimatedNodeCycles, estimatedNodeSize, fail, formatTo, getCreationPosition, getDebug, getDebugProperties, getDebugProperties, getInsertionPosition, getNodeClass, getNodeSourcePosition, getOptions, getUsageCount, hasExactlyOneUsage, hashCode, hasMoreThanOneUsage, hasNoUsages, hasOnlyUsagesOfType, hasUsages, hasUsagesOfType, inputPositions, inputs, isAlive, isDeleted, isUnregistered, markDeleted, maybeNotifyZeroUsages, modCount, predecessor, pushInputs, removeUsage, replaceAllInputs, replaceAndDelete, replaceAtAllUsages, replaceAtMatchingUsages, replaceAtPredecessor, replaceAtUsages, replaceAtUsages, replaceAtUsages, replaceAtUsages, replaceAtUsages, replaceAtUsagesAndDelete, replaceAtUsagesAndDelete, replaceFirstInput, replaceFirstSuccessor, safeDelete, setCreationPosition, setInsertionPosition, setNodeSourcePosition, singleUsage, successorPositions, successors, toString, toString, updateNodeSourcePosition, updatePredecessor, updateUsages, usages, valueEquals, verifyEdges, verifyInputs, verifySourcePosition, withNodeSourcePositionclone, equals, getClass, notify, notifyAll, wait, wait, waitasMultiMemoryKill, asSingleMemoryKill, isMemoryKill, isMultiMemoryKill, isSingleMemoryKillsetStateAfter, stateAfterstatesasFixedNodeasNodepublic static final NodeClass<ExceptionObjectNode> TYPE
public org.graalvm.word.LocationIdentity getKilledLocationIdentity()
SingleMemoryKillLocationIdentity.any() will kill all memory locations.getKilledLocationIdentity in interface SingleMemoryKillpublic boolean hasSideEffect()
hasSideEffect in interface StateSplithasSideEffect in class BeginStateSplitNodepublic void lower(LoweringTool tool)
Lowerablepublic boolean verify()
verify in class AbstractBeginNodepublic boolean canDeoptimize()
DeoptimizingNodecanDeoptimize in interface DeoptimizingNode