public final class NewFrameNode extends FixedWithNextNode implements IterableNodeType, VirtualizableAllocation, Canonicalizable
OptimizedCallTarget
class.Modifier and Type | Class and Description |
---|---|
static class |
NewFrameNode.VirtualOnlyInstanceNode |
Node.ConstantNodeParameter, Node.InjectedNodeParameter, Node.Input, Node.NodeIntrinsic, Node.OptionalInput, Node.Successor, Node.ValueNumberable
Canonicalizable.Binary<T extends Node>, Canonicalizable.BinaryCommutative<T extends Node>, Canonicalizable.Unary<T extends Node>
Modifier and Type | Field and Description |
---|---|
(package private) ValueNode |
arguments |
(package private) ValueNode |
descriptor |
static NodeClass<NewFrameNode> |
TYPE |
next
NODE_LIST, NOT_ITERABLE, USE_UNSAFE_TO_CLONE, WithAllEdges, WithNoEdges, WithOnlyInputEdges, WithOnlySucessorEdges
Constructor and Description |
---|
NewFrameNode(ResolvedJavaType frameType,
ValueNode descriptor,
ValueNode arguments) |
NewFrameNode(Stamp stamp,
ValueNode descriptor,
ValueNode arguments) |
Modifier and Type | Method and Description |
---|---|
static com.oracle.truffle.api.frame.VirtualFrame |
allocate(Class<? extends com.oracle.truffle.api.frame.VirtualFrame> frameType,
com.oracle.truffle.api.frame.FrameDescriptor descriptor,
Object[] args) |
Node |
canonical(CanonicalizerTool tool) |
private static ResolvedJavaField |
findField(ResolvedJavaField[] fields,
String fieldName) |
ValueNode |
getArguments() |
private com.oracle.truffle.api.frame.FrameDescriptor |
getConstantFrameDescriptor() |
ValueNode |
getDescriptor() |
private int |
getFrameSize() |
static ValueNode |
getMaterializedRepresentationHelper(VirtualObjectNode virtualNode,
FixedNode fixed) |
private static SnippetReflectionProvider |
getSnippetReflection() |
private ValueNode |
initialPrimitiveValue(com.oracle.truffle.api.frame.FrameSlotKind kind) |
void |
virtualize(VirtualizerTool tool) |
asNode, next, setNext
asConstant, asJavaConstant, getKind, graph, inferStamp, isAllowedUsageType, isConstant, isConstantPredicate, isNullConstant, setStamp, stamp, updateStamp
acceptInputs, 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, verifyInputs
public static final NodeClass<NewFrameNode> TYPE
ValueNode descriptor
public NewFrameNode(Stamp stamp, ValueNode descriptor, ValueNode arguments)
public NewFrameNode(ResolvedJavaType frameType, ValueNode descriptor, ValueNode arguments)
public ValueNode getDescriptor()
public ValueNode getArguments()
private static SnippetReflectionProvider getSnippetReflection()
private com.oracle.truffle.api.frame.FrameDescriptor getConstantFrameDescriptor()
private int getFrameSize()
private static ResolvedJavaField findField(ResolvedJavaField[] fields, String fieldName)
public static ValueNode getMaterializedRepresentationHelper(VirtualObjectNode virtualNode, FixedNode fixed)
public void virtualize(VirtualizerTool tool)
virtualize
in interface Virtualizable
private ValueNode initialPrimitiveValue(com.oracle.truffle.api.frame.FrameSlotKind kind)
public Node canonical(CanonicalizerTool tool)
canonical
in interface Canonicalizable