public final class ThrowBytecodeExceptionNode
extends org.graalvm.compiler.nodes.ControlSinkNode
implements org.graalvm.compiler.nodes.spi.NodeWithState, org.graalvm.compiler.nodes.spi.Lowerable
BytecodeExceptionNode
, this node does not
return the exception. Instead it throws the exception, i.e., this node does not have a successor.
It is used to simplify the graph structure when the result of a BytecodeExceptionNode
would directly feed into a UnwindNode
anyway.org.graalvm.compiler.graph.Node.ConstantNodeParameter, org.graalvm.compiler.graph.Node.EdgeVisitor, org.graalvm.compiler.graph.Node.IndirectCanonicalization, org.graalvm.compiler.graph.Node.InjectedNodeParameter, org.graalvm.compiler.graph.Node.Input, org.graalvm.compiler.graph.Node.NodeInsertionStackTrace, org.graalvm.compiler.graph.Node.NodeIntrinsic, org.graalvm.compiler.graph.Node.OptionalInput, org.graalvm.compiler.graph.Node.Successor, org.graalvm.compiler.graph.Node.ValueNumberable
Modifier and Type | Field and Description |
---|---|
static org.graalvm.compiler.graph.NodeClass<ThrowBytecodeExceptionNode> |
TYPE |
Constructor and Description |
---|
ThrowBytecodeExceptionNode(org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.BytecodeExceptionKind exceptionKind,
List<org.graalvm.compiler.nodes.ValueNode> arguments) |
Modifier and Type | Method and Description |
---|---|
org.graalvm.compiler.graph.NodeInputList<org.graalvm.compiler.nodes.ValueNode> |
getArguments() |
org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.BytecodeExceptionKind |
getExceptionKind() |
void |
lower(org.graalvm.compiler.nodes.spi.LoweringTool tool) |
void |
setStateBefore(org.graalvm.compiler.nodes.FrameState f) |
org.graalvm.compiler.nodes.FrameState |
stateBefore() |
asConstant, asJavaConstant, asSerializableConstant, getStackKind, graph, hasUsagesOtherThan, inferStamp, isAllowedUsageType, isConstant, isConstantPredicate, isDefaultConstant, isJavaConstant, isNullConstant, isSerializableConstant, replaceAtUsages, setStamp, stamp, updateStamp
afterClone, applyInputs, applySuccessors, assertFalse, assertTrue, cfgPredecessors, cfgSuccessors, clearInputs, clearNodeSourcePosition, clearSuccessors, copyWithInputs, copyWithInputs, dataFlowEquals, estimatedNodeCycles, estimatedNodeSize, fail, formatTo, getCreationPosition, getDebug, getDebugProperties, getDebugProperties, getInsertionPosition, getNodeClass, getNodeSourcePosition, getOptions, getUsageCount, hasExactlyOneUsage, hashCode, hasMoreThanOneUsage, hasNoUsages, hasUsages, inputPositions, inputs, isAlive, isDeleted, isUnregistered, markDeleted, maybeNotifyZeroUsages, modCount, predecessor, pushInputs, removeUsage, replaceAllInputs, replaceAndDelete, replaceAtAllUsages, replaceAtMatchingUsages, replaceAtPredecessor, replaceAtUsages, replaceAtUsages, replaceAtUsages, replaceAtUsagesAndDelete, replaceAtUsagesAndDelete, replaceFirstInput, replaceFirstInput, replaceFirstSuccessor, safeDelete, setCreationPosition, setInsertionPosition, setNodeSourcePosition, simplify, successorPositions, successors, toString, toString, updateNodeSourcePosition, updatePredecessor, updateUsages, updateUsagesInterface, usages, valueEquals, verifyEdges, verifyInputs, verifySourcePosition, withNodeSourcePosition
public static final org.graalvm.compiler.graph.NodeClass<ThrowBytecodeExceptionNode> TYPE
public ThrowBytecodeExceptionNode(org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.BytecodeExceptionKind exceptionKind, List<org.graalvm.compiler.nodes.ValueNode> arguments)
public org.graalvm.compiler.nodes.extended.BytecodeExceptionNode.BytecodeExceptionKind getExceptionKind()
public org.graalvm.compiler.graph.NodeInputList<org.graalvm.compiler.nodes.ValueNode> getArguments()
public org.graalvm.compiler.nodes.FrameState stateBefore()
public void setStateBefore(org.graalvm.compiler.nodes.FrameState f)
public void lower(org.graalvm.compiler.nodes.spi.LoweringTool tool)
lower
in interface org.graalvm.compiler.nodes.spi.Lowerable