class com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node extends com.oracle.truffle.api.test.ChildrenNodesTest$TestRootNode
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node
super_class: com.oracle.truffle.api.test.ChildrenNodesTest$TestRootNode
{
private final com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode[] children1;
descriptor: [Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Children()
private final com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode[] children2;
descriptor: [Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Children()
final com.oracle.truffle.api.test.ChildrenNodesTest this$0;
descriptor: Lcom/oracle/truffle/api/test/ChildrenNodesTest;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.oracle.truffle.api.test.ChildrenNodesTest, com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode[], com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode[]);
descriptor: (Lcom/oracle/truffle/api/test/ChildrenNodesTest;[Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;[Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 // com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node this
start local 2 // com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode[] children1
start local 3 // com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode[] children2
0: .line 147
aload 0 /* this */
aload 1
putfield com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node.this$0:Lcom/oracle/truffle/api/test/ChildrenNodesTest;
1: .line 148
aload 0 /* this */
aload 1
iconst_0
anewarray com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode
invokespecial com.oracle.truffle.api.test.ChildrenNodesTest$TestRootNode.<init>:(Lcom/oracle/truffle/api/test/ChildrenNodesTest;[Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;)V
2: .line 149
aload 0 /* this */
aload 2 /* children1 */
putfield com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node.children1:[Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;
3: .line 150
aload 0 /* this */
aload 3 /* children2 */
putfield com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node.children2:[Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;
4: .line 151
return
end local 3 // com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode[] children2
end local 2 // com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode[] children1
end local 0 // com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestRoot2Node;
0 5 2 children1 [Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;
0 5 3 children2 [Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;
MethodParameters:
Name Flags
this$0 final
children1
children2
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=3, locals=4, args_size=2
start local 0 // com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node this
start local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
0: .line 155
iconst_0
istore 2 /* sum */
start local 2 // int sum
1: .line 156
iconst_0
istore 3 /* i */
start local 3 // int i
2: goto 5
3: .line 157
StackMap locals: int int
StackMap stack:
iload 2 /* sum */
aload 0 /* this */
getfield com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node.children1:[Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;
iload 3 /* i */
aaload
invokevirtual com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode.execute:()I
iadd
istore 2 /* sum */
4: .line 156
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
5: iload 3 /* i */
aload 0 /* this */
getfield com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node.children1:[Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;
arraylength
if_icmplt 3
end local 3 // int i
6: .line 159
iconst_0
istore 3 /* i */
start local 3 // int i
7: goto 10
8: .line 160
StackMap locals:
StackMap stack:
iload 2 /* sum */
aload 0 /* this */
getfield com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node.children2:[Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;
iload 3 /* i */
aaload
invokevirtual com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode.execute:()I
iadd
istore 2 /* sum */
9: .line 159
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
10: iload 3 /* i */
aload 0 /* this */
getfield com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node.children2:[Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestChildNode;
arraylength
if_icmplt 8
end local 3 // int i
11: .line 162
iload 2 /* sum */
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
end local 2 // int sum
end local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
end local 0 // com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node this
LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/oracle/truffle/api/test/ChildrenNodesTest$TestRoot2Node;
0 12 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
1 12 2 sum I
2 6 3 i I
7 11 3 i I
MethodParameters:
Name Flags
frame
}
SourceFile: "ChildrenNodesTest.java"
NestHost: com.oracle.truffle.api.test.ChildrenNodesTest
InnerClasses:
public abstract Children = com.oracle.truffle.api.nodes.Node$Children of com.oracle.truffle.api.nodes.Node
TestChildNode = com.oracle.truffle.api.test.ChildrenNodesTest$TestChildNode of com.oracle.truffle.api.test.ChildrenNodesTest
TestRoot2Node = com.oracle.truffle.api.test.ChildrenNodesTest$TestRoot2Node of com.oracle.truffle.api.test.ChildrenNodesTest
TestRootNode = com.oracle.truffle.api.test.ChildrenNodesTest$TestRootNode of com.oracle.truffle.api.test.ChildrenNodesTest