public class com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode extends com.oracle.truffle.nfi.test.NFITest$NFITestRootNode
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode
super_class: com.oracle.truffle.nfi.test.NFITest$NFITestRootNode
{
com.oracle.truffle.nfi.test.RegisterPackageNFITest$LoadPackageNode loadPackage;
descriptor: Lcom/oracle/truffle/nfi/test/RegisterPackageNFITest$LoadPackageNode;
flags: (0x0000)
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
com.oracle.truffle.api.interop.InteropLibrary interop;
descriptor: Lcom/oracle/truffle/api/interop/InteropLibrary;
flags: (0x0000)
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 // com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode this
0: .line 149
aload 0 /* this */
invokespecial com.oracle.truffle.nfi.test.NFITest$NFITestRootNode.<init>:()V
1: .line 151
aload 0 /* this */
new com.oracle.truffle.nfi.test.RegisterPackageNFITest$LoadPackageNode
dup
invokespecial com.oracle.truffle.nfi.test.RegisterPackageNFITest$LoadPackageNode.<init>:()V
putfield com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode.loadPackage:Lcom/oracle/truffle/nfi/test/RegisterPackageNFITest$LoadPackageNode;
2: .line 152
aload 0 /* this */
invokestatic com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode.getInterop:()Lcom/oracle/truffle/api/interop/InteropLibrary;
putfield com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode.interop:Lcom/oracle/truffle/api/interop/InteropLibrary;
3: .line 149
return
end local 0 // com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/truffle/nfi/test/RegisterPackageNFITest$RegisterPackageTestNode;
public java.lang.Object executeTest(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=16, args_size=2
start local 0 // com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode this
start local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
0: .line 156
aload 0 /* this */
getfield com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode.loadPackage:Lcom/oracle/truffle/nfi/test/RegisterPackageNFITest$LoadPackageNode;
invokevirtual com.oracle.truffle.nfi.test.RegisterPackageNFITest$LoadPackageNode.loadPackage:()Lcom/oracle/truffle/nfi/test/RegisterPackageNFITest$FunctionRegistry;
astore 2 /* registry */
start local 2 // com.oracle.truffle.nfi.test.RegisterPackageNFITest$FunctionRegistry registry
1: .line 158
aload 2 /* registry */
ldc "add"
invokevirtual com.oracle.truffle.nfi.test.RegisterPackageNFITest$FunctionRegistry.get:(Ljava/lang/String;)Ljava/lang/Object;
astore 3 /* add */
start local 3 // java.lang.Object add
2: .line 159
aload 2 /* registry */
ldc "square"
invokevirtual com.oracle.truffle.nfi.test.RegisterPackageNFITest$FunctionRegistry.get:(Ljava/lang/String;)Ljava/lang/Object;
astore 4 /* square */
start local 4 // java.lang.Object square
3: .line 160
aload 2 /* registry */
ldc "sqrt"
invokevirtual com.oracle.truffle.nfi.test.RegisterPackageNFITest$FunctionRegistry.get:(Ljava/lang/String;)Ljava/lang/Object;
astore 5 /* sqrt */
start local 5 // java.lang.Object sqrt
4: .line 162
aload 1 /* frame */
invokeinterface com.oracle.truffle.api.frame.VirtualFrame.getArguments:()[Ljava/lang/Object;
iconst_0
aaload
checkcast java.lang.Double
invokevirtual java.lang.Double.doubleValue:()D
dstore 6 /* a */
start local 6 // double a
5: .line 163
aload 1 /* frame */
invokeinterface com.oracle.truffle.api.frame.VirtualFrame.getArguments:()[Ljava/lang/Object;
iconst_1
aaload
checkcast java.lang.Double
invokevirtual java.lang.Double.doubleValue:()D
dstore 8 /* b */
start local 8 // double b
6: .line 165
aload 0 /* this */
getfield com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode.interop:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 4 /* square */
iconst_1
anewarray java.lang.Object
dup
iconst_0
dload 6 /* a */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.execute:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Double
invokevirtual java.lang.Double.doubleValue:()D
dstore 10 /* aSq */
start local 10 // double aSq
7: .line 166
aload 0 /* this */
getfield com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode.interop:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 4 /* square */
iconst_1
anewarray java.lang.Object
dup
iconst_0
dload 8 /* b */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.execute:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Double
invokevirtual java.lang.Double.doubleValue:()D
dstore 12 /* bSq */
start local 12 // double bSq
8: .line 168
aload 0 /* this */
getfield com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode.interop:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 3 /* add */
iconst_2
anewarray java.lang.Object
dup
iconst_0
dload 10 /* aSq */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
dup
iconst_1
dload 12 /* bSq */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.execute:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Double
invokevirtual java.lang.Double.doubleValue:()D
dstore 14 /* cSq */
start local 14 // double cSq
9: .line 169
aload 0 /* this */
getfield com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode.interop:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 5 /* sqrt */
iconst_1
anewarray java.lang.Object
dup
iconst_0
dload 14 /* cSq */
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.execute:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 14 // double cSq
end local 12 // double bSq
end local 10 // double aSq
end local 8 // double b
end local 6 // double a
end local 5 // java.lang.Object sqrt
end local 4 // java.lang.Object square
end local 3 // java.lang.Object add
end local 2 // com.oracle.truffle.nfi.test.RegisterPackageNFITest$FunctionRegistry registry
end local 1 // com.oracle.truffle.api.frame.VirtualFrame frame
end local 0 // com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/oracle/truffle/nfi/test/RegisterPackageNFITest$RegisterPackageTestNode;
0 10 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
1 10 2 registry Lcom/oracle/truffle/nfi/test/RegisterPackageNFITest$FunctionRegistry;
2 10 3 add Ljava/lang/Object;
3 10 4 square Ljava/lang/Object;
4 10 5 sqrt Ljava/lang/Object;
5 10 6 a D
6 10 8 b D
7 10 10 aSq D
8 10 12 bSq D
9 10 14 cSq D
Exceptions:
throws com.oracle.truffle.api.interop.InteropException
MethodParameters:
Name Flags
frame
}
SourceFile: "RegisterPackageNFITest.java"
NestHost: com.oracle.truffle.nfi.test.RegisterPackageNFITest
InnerClasses:
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node
protected abstract NFITestRootNode = com.oracle.truffle.nfi.test.NFITest$NFITestRootNode of com.oracle.truffle.nfi.test.NFITest
FunctionRegistry = com.oracle.truffle.nfi.test.RegisterPackageNFITest$FunctionRegistry of com.oracle.truffle.nfi.test.RegisterPackageNFITest
LoadPackageNode = com.oracle.truffle.nfi.test.RegisterPackageNFITest$LoadPackageNode of com.oracle.truffle.nfi.test.RegisterPackageNFITest
public RegisterPackageTestNode = com.oracle.truffle.nfi.test.RegisterPackageNFITest$RegisterPackageTestNode of com.oracle.truffle.nfi.test.RegisterPackageNFITest