public final class CFunctionPrologueDataNode extends org.graalvm.compiler.nodes.ValueNode implements CPrologueData, org.graalvm.compiler.nodes.spi.LIRLowerable
CFunctionPrologueNode to the
InvokeNode. This is necessary because the prologue of a C function is decoupled from the
actual invocation of the C function even though the backend needs information about the prologue
when emitting the call.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.NodeIntrinsicFactory, 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<CFunctionPrologueDataNode> |
TYPE |
| Constructor and Description |
|---|
CFunctionPrologueDataNode(org.graalvm.compiler.nodes.ValueNode frameAnchor,
int newThreadStatus) |
| Modifier and Type | Method and Description |
|---|---|
static CPrologueData |
cFunctionPrologueData(JavaFrameAnchor frameAnchor,
int newThreadStatus) |
org.graalvm.compiler.nodes.ValueNode |
frameAnchor() |
void |
generate(org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool generator) |
int |
getNewThreadStatus() |
asConstant, 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, 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, replaceAtUsagesAndDelete, replaceAtUsagesAndDelete, replaceFirstInput, replaceFirstSuccessor, safeDelete, setCreationPosition, setInsertionPosition, setNodeSourcePosition, singleUsage, successorPositions, successors, toString, toString, updateNodeSourcePosition, updatePredecessor, updateUsages, usages, valueEquals, verify, verifyEdges, verifyInputs, verifySourcePosition, withNodeSourcePositionpublic static final org.graalvm.compiler.graph.NodeClass<CFunctionPrologueDataNode> TYPE
public CFunctionPrologueDataNode(org.graalvm.compiler.nodes.ValueNode frameAnchor,
int newThreadStatus)
public org.graalvm.compiler.nodes.ValueNode frameAnchor()
public int getNewThreadStatus()
public void generate(org.graalvm.compiler.nodes.spi.NodeLIRBuilderTool generator)
generate in interface org.graalvm.compiler.nodes.spi.LIRLowerablepublic static CPrologueData cFunctionPrologueData(JavaFrameAnchor frameAnchor, int newThreadStatus)