public final class UncommonTrapCallNode 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 ForeignCallsProvider |
foreignCalls |
(package private) SaveAllRegistersNode |
registerSaver |
(package private) ValueNode |
trapRequest |
static NodeClass<UncommonTrapCallNode> |
TYPE |
nextNODE_LIST, NOT_ITERABLE, USE_UNSAFE_TO_CLONE, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges| Constructor and Description |
|---|
UncommonTrapCallNode(ForeignCallsProvider foreignCalls,
ValueNode registerSaver,
ValueNode trapRequest) |
| Modifier and Type | Method and Description |
|---|---|
void |
generate(NodeLIRBuilderTool gen) |
LocationIdentity |
getLocationIdentity()
This method is used to determine which memory location is killed by this node.
|
StandardOp.SaveRegistersOp |
getSaveRegistersOp() |
static Word |
uncommonTrap(long registerSaver,
int trapRequest) |
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<UncommonTrapCallNode> TYPE
ValueNode trapRequest
SaveAllRegistersNode registerSaver
protected final ForeignCallsProvider foreignCalls
public UncommonTrapCallNode(ForeignCallsProvider foreignCalls, ValueNode registerSaver, ValueNode trapRequest)
public LocationIdentity getLocationIdentity()
MemoryCheckpoint.SingleLocationIdentity.any() will kill all memory locations.getLocationIdentity in interface MemoryCheckpoint.Singlepublic StandardOp.SaveRegistersOp getSaveRegistersOp()
public void generate(NodeLIRBuilderTool gen)
generate in interface LIRLowerablepublic static Word uncommonTrap(long registerSaver, int trapRequest)