class org.graalvm.compiler.truffle.test.MultiTierCompilationTest$MultiTierRootNode extends com.oracle.truffle.api.nodes.RootNode
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.truffle.test.MultiTierCompilationTest$MultiTierRootNode
super_class: com.oracle.truffle.api.nodes.RootNode
{
private com.oracle.truffle.api.nodes.DirectCallNode callNode;
descriptor: Lcom/oracle/truffle/api/nodes/DirectCallNode;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
void <init>(com.oracle.truffle.api.CallTarget);
descriptor: (Lcom/oracle/truffle/api/CallTarget;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 // org.graalvm.compiler.truffle.test.MultiTierCompilationTest$MultiTierRootNode this
start local 1 // com.oracle.truffle.api.CallTarget target
0: .line 73
aload 0 /* this */
aconst_null
invokespecial com.oracle.truffle.api.nodes.RootNode.<init>:(Lcom/oracle/truffle/api/TruffleLanguage;)V
1: .line 74
aload 0 /* this */
invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
aload 1 /* target */
invokeinterface com.oracle.truffle.api.TruffleRuntime.createDirectCallNode:(Lcom/oracle/truffle/api/CallTarget;)Lcom/oracle/truffle/api/nodes/DirectCallNode;
putfield org.graalvm.compiler.truffle.test.MultiTierCompilationTest$MultiTierRootNode.callNode:Lcom/oracle/truffle/api/nodes/DirectCallNode;
2: .line 75
return
end local 1 // com.oracle.truffle.api.CallTarget target
end local 0 // org.graalvm.compiler.truffle.test.MultiTierCompilationTest$MultiTierRootNode this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/truffle/test/MultiTierCompilationTest$MultiTierRootNode;
0 3 1 target Lcom/oracle/truffle/api/CallTarget;
MethodParameters:
Name Flags
target
public java.lang.Object execute(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // org.graalvm.compiler.truffle.test.MultiTierCompilationTest$MultiTierRootNode this
start local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
0: .line 79
invokestatic com.oracle.truffle.api.CompilerDirectives.inInterpreter:()Z
ifeq 2
1: .line 80
ldc "root:interpreter"
areturn
2: .line 82
StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.truffle.test.MultiTierCompilationTest.boundary:()V
3: .line 83
aload 0 /* this */
getfield org.graalvm.compiler.truffle.test.MultiTierCompilationTest$MultiTierRootNode.callNode:Lcom/oracle/truffle/api/nodes/DirectCallNode;
aload 1 /* frame */
invokeinterface com.oracle.truffle.api.frame.VirtualFrame.getArguments:()[Ljava/lang/Object;
invokevirtual com.oracle.truffle.api.nodes.DirectCallNode.call:([Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
end local 0 // org.graalvm.compiler.truffle.test.MultiTierCompilationTest$MultiTierRootNode this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/truffle/test/MultiTierCompilationTest$MultiTierRootNode;
0 4 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
MethodParameters:
Name Flags
frame
}
SourceFile: "MultiTierCompilationTest.java"
NestHost: org.graalvm.compiler.truffle.test.MultiTierCompilationTest
InnerClasses:
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node
private MultiTierRootNode = org.graalvm.compiler.truffle.test.MultiTierCompilationTest$MultiTierRootNode of org.graalvm.compiler.truffle.test.MultiTierCompilationTest