final class com.oracle.svm.truffle.nfi.NativeAPIImpl
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.oracle.svm.truffle.nfi.NativeAPIImpl
super_class: java.lang.Object
{
static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.truffle.nfi.NativeAPI$GetTruffleContextFunction> GET_TRUFFLE_CONTEXT;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/truffle/nfi/NativeAPI$GetTruffleContextFunction;>;
static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.truffle.nfi.NativeAPI$NewObjectRefFunction> NEW_OBJECT_REF;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/truffle/nfi/NativeAPI$NewObjectRefFunction;>;
static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.truffle.nfi.NativeAPI$ReleaseObjectRefFunction> RELEASE_OBJECT_REF;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/truffle/nfi/NativeAPI$ReleaseObjectRefFunction;>;
static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.truffle.nfi.NativeAPI$ReleaseAndReturnFunction> RELEASE_AND_RETURN;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/truffle/nfi/NativeAPI$ReleaseAndReturnFunction;>;
static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.truffle.nfi.NativeAPI$IsSameObjectFunction> IS_SAME_OBJECT;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/truffle/nfi/NativeAPI$IsSameObjectFunction;>;
static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.truffle.nfi.NativeAPI$NewClosureRefFunction> NEW_CLOSURE_REF;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/truffle/nfi/NativeAPI$NewClosureRefFunction;>;
static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.truffle.nfi.NativeAPI$ReleaseClosureRefFunction> RELEASE_CLOSURE_REF;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/truffle/nfi/NativeAPI$ReleaseClosureRefFunction;>;
static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.truffle.nfi.NativeAPI$GetClosureObjectFunction> GET_CLOSURE_OBJECT;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/truffle/nfi/NativeAPI$GetClosureObjectFunction;>;
static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.truffle.nfi.NativeAPI$GetTruffleEnvFunction> GET_TRUFFLE_ENV;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/truffle/nfi/NativeAPI$GetTruffleEnvFunction;>;
static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.truffle.nfi.NativeAPI$AttachCurrentThreadFunction> ATTACH_CURRENT_THREAD;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/truffle/nfi/NativeAPI$AttachCurrentThreadFunction;>;
static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.truffle.nfi.NativeAPI$DetachCurrentThreadFunction> DETACH_CURRENT_THREAD;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/truffle/nfi/NativeAPI$DetachCurrentThreadFunction;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=0, args_size=0
0: ldc Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
ldc "getTruffleContext"
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
aastore
invokestatic org.graalvm.nativeimage.c.function.CEntryPointLiteral.create:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
putstatic com.oracle.svm.truffle.nfi.NativeAPIImpl.GET_TRUFFLE_CONTEXT:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
1: ldc Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
ldc "newObjectRef"
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
aastore
dup
iconst_1
ldc Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
aastore
invokestatic org.graalvm.nativeimage.c.function.CEntryPointLiteral.create:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
putstatic com.oracle.svm.truffle.nfi.NativeAPIImpl.NEW_OBJECT_REF:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
2: ldc Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
ldc "releaseObjectRef"
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
aastore
dup
iconst_1
3: ldc Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
aastore
4: invokestatic org.graalvm.nativeimage.c.function.CEntryPointLiteral.create:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
putstatic com.oracle.svm.truffle.nfi.NativeAPIImpl.RELEASE_OBJECT_REF:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
5: ldc Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
ldc "releaseAndReturn"
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
aastore
dup
iconst_1
6: ldc Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
aastore
7: invokestatic org.graalvm.nativeimage.c.function.CEntryPointLiteral.create:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
putstatic com.oracle.svm.truffle.nfi.NativeAPIImpl.RELEASE_AND_RETURN:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
8: ldc Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
ldc "isSameObject"
iconst_3
anewarray java.lang.Class
dup
iconst_0
ldc Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
aastore
dup
iconst_1
ldc Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
aastore
dup
iconst_2
9: ldc Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
aastore
10: invokestatic org.graalvm.nativeimage.c.function.CEntryPointLiteral.create:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
putstatic com.oracle.svm.truffle.nfi.NativeAPIImpl.IS_SAME_OBJECT:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
11: ldc Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
ldc "newClosureRef"
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
aastore
dup
iconst_1
ldc Lorg/graalvm/word/PointerBase;
aastore
invokestatic org.graalvm.nativeimage.c.function.CEntryPointLiteral.create:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
putstatic com.oracle.svm.truffle.nfi.NativeAPIImpl.NEW_CLOSURE_REF:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
12: ldc Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
ldc "releaseClosureRef"
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
aastore
dup
iconst_1
ldc Lorg/graalvm/word/PointerBase;
aastore
invokestatic org.graalvm.nativeimage.c.function.CEntryPointLiteral.create:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
putstatic com.oracle.svm.truffle.nfi.NativeAPIImpl.RELEASE_CLOSURE_REF:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
13: ldc Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
ldc "getClosureObject"
iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
aastore
dup
iconst_1
ldc Lorg/graalvm/word/PointerBase;
aastore
invokestatic org.graalvm.nativeimage.c.function.CEntryPointLiteral.create:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
putstatic com.oracle.svm.truffle.nfi.NativeAPIImpl.GET_CLOSURE_OBJECT:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
14: ldc Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
ldc "getTruffleEnv"
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
aastore
invokestatic org.graalvm.nativeimage.c.function.CEntryPointLiteral.create:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
putstatic com.oracle.svm.truffle.nfi.NativeAPIImpl.GET_TRUFFLE_ENV:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
15: ldc Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
ldc "attachCurrentThread"
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
aastore
invokestatic org.graalvm.nativeimage.c.function.CEntryPointLiteral.create:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
putstatic com.oracle.svm.truffle.nfi.NativeAPIImpl.ATTACH_CURRENT_THREAD:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
16: ldc Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
ldc "detachCurrentThread"
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
aastore
invokestatic org.graalvm.nativeimage.c.function.CEntryPointLiteral.create:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
putstatic com.oracle.svm.truffle.nfi.NativeAPIImpl.DETACH_CURRENT_THREAD:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/truffle/nfi/NativeAPIImpl;
private static com.oracle.svm.truffle.nfi.Target_com_oracle_truffle_nfi_impl_NFIContext lookupContext(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleContext);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;)Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: ldc Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
invokestatic org.graalvm.nativeimage.ImageSingletons.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.svm.truffle.nfi.TruffleNFISupport
astore 1
start local 1 1: aload 1
aload 0
invokeinterface com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleContext.contextHandle:()Lcom/oracle/svm/truffle/nfi/NativeAPI$TruffleContextHandle;
invokevirtual com.oracle.svm.truffle.nfi.TruffleNFISupport.resolveContextHandle:(Lcom/oracle/svm/truffle/nfi/NativeAPI$TruffleContextHandle;)Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 context Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
1 2 1 support Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
MethodParameters:
Name Flags
context
static com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleContext getTruffleContext(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;)Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv.context:()Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 env Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/truffle/nfi/NativeAPIImpl$EnterNativeTruffleEnvPrologue;, publishAs = com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;, include = Lcom/oracle/svm/core/c/function/CEntryPointOptions$NotIncludedAutomatically;)
MethodParameters:
Name Flags
env
static com.oracle.svm.truffle.nfi.TruffleObjectHandle newObjectRef(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv, com.oracle.svm.truffle.nfi.TruffleObjectHandle);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;)Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: ldc Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
invokestatic org.graalvm.nativeimage.ImageSingletons.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.svm.truffle.nfi.TruffleNFISupport
astore 2
start local 2 1: aload 2
aload 1
invokevirtual com.oracle.svm.truffle.nfi.TruffleNFISupport.resolveHandle:(Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;)Ljava/lang/Object;
astore 3
start local 3 2: aload 2
aload 3
invokevirtual com.oracle.svm.truffle.nfi.TruffleNFISupport.createGlobalHandle:(Ljava/lang/Object;)Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 env Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
0 3 1 handle Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
1 3 2 support Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
2 3 3 object Ljava/lang/Object;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/truffle/nfi/NativeAPIImpl$EnterNativeTruffleEnvPrologue;, publishAs = com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;, include = Lcom/oracle/svm/core/c/function/CEntryPointOptions$NotIncludedAutomatically;)
MethodParameters:
Name Flags
env
handle
static void releaseObjectRef(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv, com.oracle.svm.truffle.nfi.TruffleObjectHandle);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;)V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: ldc Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
invokestatic org.graalvm.nativeimage.ImageSingletons.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.svm.truffle.nfi.TruffleNFISupport
aload 1
invokevirtual com.oracle.svm.truffle.nfi.TruffleNFISupport.destroyGlobalHandle:(Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 env Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
0 2 1 handle Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/truffle/nfi/NativeAPIImpl$EnterNativeTruffleEnvPrologue;, publishAs = com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;, include = Lcom/oracle/svm/core/c/function/CEntryPointOptions$NotIncludedAutomatically;)
MethodParameters:
Name Flags
env
handle
static com.oracle.svm.truffle.nfi.TruffleObjectHandle releaseAndReturn(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv, com.oracle.svm.truffle.nfi.TruffleObjectHandle);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;)Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: ldc Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
invokestatic org.graalvm.nativeimage.ImageSingletons.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.svm.truffle.nfi.TruffleNFISupport
astore 2
start local 2 1: aload 2
aload 1
invokevirtual com.oracle.svm.truffle.nfi.TruffleNFISupport.resolveHandle:(Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;)Ljava/lang/Object;
astore 3
start local 3 2: aload 2
aload 1
invokevirtual com.oracle.svm.truffle.nfi.TruffleNFISupport.destroyGlobalHandle:(Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;)V
3: aload 3
invokestatic com.oracle.svm.truffle.nfi.TruffleNFISupport.createLocalHandle:(Ljava/lang/Object;)Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 env Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
0 4 1 handle Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
1 4 2 support Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
2 4 3 object Ljava/lang/Object;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/truffle/nfi/NativeAPIImpl$EnterNativeTruffleEnvPrologue;, publishAs = com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;, include = Lcom/oracle/svm/core/c/function/CEntryPointOptions$NotIncludedAutomatically;)
MethodParameters:
Name Flags
env
handle
static int isSameObject(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv, com.oracle.svm.truffle.nfi.TruffleObjectHandle, com.oracle.svm.truffle.nfi.TruffleObjectHandle);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;)I
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=6, args_size=3
start local 0 start local 1 start local 2 0: ldc Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
invokestatic org.graalvm.nativeimage.ImageSingletons.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.svm.truffle.nfi.TruffleNFISupport
astore 3
start local 3 1: aload 3
aload 1
invokevirtual com.oracle.svm.truffle.nfi.TruffleNFISupport.resolveHandle:(Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;)Ljava/lang/Object;
astore 4
start local 4 2: aload 3
aload 2
invokevirtual com.oracle.svm.truffle.nfi.TruffleNFISupport.resolveHandle:(Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;)Ljava/lang/Object;
astore 5
start local 5 3: aload 4
aload 5
if_acmpne 4
iconst_1
goto 5
StackMap locals: com.oracle.svm.truffle.nfi.TruffleNFISupport java.lang.Object java.lang.Object
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 env Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
0 6 1 handle1 Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
0 6 2 handle2 Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
1 6 3 support Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
2 6 4 object1 Ljava/lang/Object;
3 6 5 object2 Ljava/lang/Object;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/truffle/nfi/NativeAPIImpl$EnterNativeTruffleEnvPrologue;, publishAs = com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;, include = Lcom/oracle/svm/core/c/function/CEntryPointOptions$NotIncludedAutomatically;)
MethodParameters:
Name Flags
env
handle1
handle2
static void newClosureRef(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv, org.graalvm.word.PointerBase);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;Lorg/graalvm/word/PointerBase;)V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv.context:()Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
invokestatic com.oracle.svm.truffle.nfi.NativeAPIImpl.lookupContext:(Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;)Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
astore 2
start local 2 1: aload 2
aload 1
invokeinterface org.graalvm.word.PointerBase.rawValue:()J
invokevirtual com.oracle.svm.truffle.nfi.Target_com_oracle_truffle_nfi_impl_NFIContext.newClosureRef:(J)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 env Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
0 3 1 closure Lorg/graalvm/word/PointerBase;
1 3 2 context Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/truffle/nfi/NativeAPIImpl$EnterNativeTruffleEnvPrologue;, publishAs = com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;, include = Lcom/oracle/svm/core/c/function/CEntryPointOptions$NotIncludedAutomatically;)
MethodParameters:
Name Flags
env
closure
static void releaseClosureRef(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv, org.graalvm.word.PointerBase);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;Lorg/graalvm/word/PointerBase;)V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokeinterface com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv.context:()Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
invokestatic com.oracle.svm.truffle.nfi.NativeAPIImpl.lookupContext:(Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;)Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
astore 2
start local 2 1: aload 2
aload 1
invokeinterface org.graalvm.word.PointerBase.rawValue:()J
invokevirtual com.oracle.svm.truffle.nfi.Target_com_oracle_truffle_nfi_impl_NFIContext.releaseClosureRef:(J)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 env Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
0 3 1 closure Lorg/graalvm/word/PointerBase;
1 3 2 context Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/truffle/nfi/NativeAPIImpl$EnterNativeTruffleEnvPrologue;, publishAs = com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;, include = Lcom/oracle/svm/core/c/function/CEntryPointOptions$NotIncludedAutomatically;)
MethodParameters:
Name Flags
env
closure
static com.oracle.svm.truffle.nfi.TruffleObjectHandle getClosureObject(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv, org.graalvm.word.PointerBase);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;Lorg/graalvm/word/PointerBase;)Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: ldc Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
invokestatic org.graalvm.nativeimage.ImageSingletons.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.svm.truffle.nfi.TruffleNFISupport
astore 2
start local 2 1: aload 0
invokeinterface com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv.context:()Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
invokestatic com.oracle.svm.truffle.nfi.NativeAPIImpl.lookupContext:(Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;)Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
astore 3
start local 3 2: aload 3
aload 1
invokeinterface org.graalvm.word.PointerBase.rawValue:()J
invokevirtual com.oracle.svm.truffle.nfi.Target_com_oracle_truffle_nfi_impl_NFIContext.getClosureObject:(J)Lcom/oracle/truffle/api/interop/TruffleObject;
astore 4
start local 4 3: aload 2
aload 4
invokevirtual com.oracle.svm.truffle.nfi.TruffleNFISupport.createGlobalHandle:(Ljava/lang/Object;)Lcom/oracle/svm/truffle/nfi/TruffleObjectHandle;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 env Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
0 4 1 closure Lorg/graalvm/word/PointerBase;
1 4 2 support Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
2 4 3 context Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
3 4 4 ret Lcom/oracle/truffle/api/interop/TruffleObject;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/truffle/nfi/NativeAPIImpl$EnterNativeTruffleEnvPrologue;, publishAs = com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;, include = Lcom/oracle/svm/core/c/function/CEntryPointOptions$NotIncludedAutomatically;)
MethodParameters:
Name Flags
env
closure
static com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv getTruffleEnv(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleContext);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;)Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: ldc Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
invokestatic org.graalvm.nativeimage.ImageSingletons.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.svm.truffle.nfi.TruffleNFISupport
astore 1
start local 1 1: aload 1
aload 0
invokeinterface com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleContext.contextHandle:()Lcom/oracle/svm/truffle/nfi/NativeAPI$TruffleContextHandle;
invokevirtual com.oracle.svm.truffle.nfi.TruffleNFISupport.resolveContextHandle:(Lcom/oracle/svm/truffle/nfi/NativeAPI$TruffleContextHandle;)Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
astore 2
start local 2 2: aload 2
invokevirtual com.oracle.svm.truffle.nfi.Target_com_oracle_truffle_nfi_impl_NFIContext.getNativeEnv:()J
invokestatic org.graalvm.word.WordFactory.pointer:(J)Lorg/graalvm/word/PointerBase;
checkcast com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 context Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
1 3 1 support Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
2 3 2 ctx Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/truffle/nfi/NativeAPIImpl$GetTruffleEnvPrologue;, publishAs = com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;, include = Lcom/oracle/svm/core/c/function/CEntryPointOptions$NotIncludedAutomatically;)
MethodParameters:
Name Flags
context
static com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv attachCurrentThread(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleContext);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;)Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleEnv;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: ldc Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
invokestatic org.graalvm.nativeimage.ImageSingletons.lookup:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast com.oracle.svm.truffle.nfi.TruffleNFISupport
astore 1
start local 1 1: aload 1
aload 0
invokeinterface com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleContext.contextHandle:()Lcom/oracle/svm/truffle/nfi/NativeAPI$TruffleContextHandle;
invokevirtual com.oracle.svm.truffle.nfi.TruffleNFISupport.resolveContextHandle:(Lcom/oracle/svm/truffle/nfi/NativeAPI$TruffleContextHandle;)Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
astore 2
start local 2 2: aload 2
invokevirtual com.oracle.svm.truffle.nfi.Target_com_oracle_truffle_nfi_impl_NFIContext.getNativeEnv:()J
invokestatic org.graalvm.word.WordFactory.pointer:(J)Lorg/graalvm/word/PointerBase;
checkcast com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 context Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
1 3 1 support Lcom/oracle/svm/truffle/nfi/TruffleNFISupport;
2 3 2 ctx Lcom/oracle/svm/truffle/nfi/Target_com_oracle_truffle_nfi_impl_NFIContext;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/truffle/nfi/NativeAPIImpl$AttachCurrentThreadPrologue;, publishAs = com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;, include = Lcom/oracle/svm/core/c/function/CEntryPointOptions$NotIncludedAutomatically;)
MethodParameters:
Name Flags
context
static void detachCurrentThread(com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleContext);
descriptor: (Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;)V
flags: (0x0008) ACC_STATIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 context Lcom/oracle/svm/truffle/nfi/NativeAPI$NativeTruffleContext;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/truffle/nfi/NativeAPIImpl$EnterNativeTruffleContextPrologue;, epilogue = Lcom/oracle/svm/core/c/function/CEntryPointSetup$LeaveDetachThreadEpilogue;, publishAs = com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;, include = Lcom/oracle/svm/core/c/function/CEntryPointOptions$NotIncludedAutomatically;)
MethodParameters:
Name Flags
context
}
SourceFile: "NativeAPIImpl.java"
NestMembers:
com.oracle.svm.truffle.nfi.NativeAPIImpl$AttachCurrentThreadPrologue com.oracle.svm.truffle.nfi.NativeAPIImpl$EnterNativeTruffleContextPrologue com.oracle.svm.truffle.nfi.NativeAPIImpl$EnterNativeTruffleEnvPrologue com.oracle.svm.truffle.nfi.NativeAPIImpl$GetTruffleEnvPrologue
InnerClasses:
public final Publish = com.oracle.svm.core.c.function.CEntryPointOptions$Publish of com.oracle.svm.core.c.function.CEntryPointOptions
public abstract AttachCurrentThreadFunction = com.oracle.svm.truffle.nfi.NativeAPI$AttachCurrentThreadFunction of com.oracle.svm.truffle.nfi.NativeAPI
public abstract DetachCurrentThreadFunction = com.oracle.svm.truffle.nfi.NativeAPI$DetachCurrentThreadFunction of com.oracle.svm.truffle.nfi.NativeAPI
public abstract GetClosureObjectFunction = com.oracle.svm.truffle.nfi.NativeAPI$GetClosureObjectFunction of com.oracle.svm.truffle.nfi.NativeAPI
public abstract GetTruffleContextFunction = com.oracle.svm.truffle.nfi.NativeAPI$GetTruffleContextFunction of com.oracle.svm.truffle.nfi.NativeAPI
public abstract GetTruffleEnvFunction = com.oracle.svm.truffle.nfi.NativeAPI$GetTruffleEnvFunction of com.oracle.svm.truffle.nfi.NativeAPI
public abstract IsSameObjectFunction = com.oracle.svm.truffle.nfi.NativeAPI$IsSameObjectFunction of com.oracle.svm.truffle.nfi.NativeAPI
public abstract NativeTruffleContext = com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleContext of com.oracle.svm.truffle.nfi.NativeAPI
public abstract NativeTruffleEnv = com.oracle.svm.truffle.nfi.NativeAPI$NativeTruffleEnv of com.oracle.svm.truffle.nfi.NativeAPI
public abstract NewClosureRefFunction = com.oracle.svm.truffle.nfi.NativeAPI$NewClosureRefFunction of com.oracle.svm.truffle.nfi.NativeAPI
public abstract NewObjectRefFunction = com.oracle.svm.truffle.nfi.NativeAPI$NewObjectRefFunction of com.oracle.svm.truffle.nfi.NativeAPI
public abstract ReleaseAndReturnFunction = com.oracle.svm.truffle.nfi.NativeAPI$ReleaseAndReturnFunction of com.oracle.svm.truffle.nfi.NativeAPI
public abstract ReleaseClosureRefFunction = com.oracle.svm.truffle.nfi.NativeAPI$ReleaseClosureRefFunction of com.oracle.svm.truffle.nfi.NativeAPI
public abstract ReleaseObjectRefFunction = com.oracle.svm.truffle.nfi.NativeAPI$ReleaseObjectRefFunction of com.oracle.svm.truffle.nfi.NativeAPI
abstract TruffleContextHandle = com.oracle.svm.truffle.nfi.NativeAPI$TruffleContextHandle of com.oracle.svm.truffle.nfi.NativeAPI
AttachCurrentThreadPrologue = com.oracle.svm.truffle.nfi.NativeAPIImpl$AttachCurrentThreadPrologue of com.oracle.svm.truffle.nfi.NativeAPIImpl
EnterNativeTruffleContextPrologue = com.oracle.svm.truffle.nfi.NativeAPIImpl$EnterNativeTruffleContextPrologue of com.oracle.svm.truffle.nfi.NativeAPIImpl
EnterNativeTruffleEnvPrologue = com.oracle.svm.truffle.nfi.NativeAPIImpl$EnterNativeTruffleEnvPrologue of com.oracle.svm.truffle.nfi.NativeAPIImpl
GetTruffleEnvPrologue = com.oracle.svm.truffle.nfi.NativeAPIImpl$GetTruffleEnvPrologue of com.oracle.svm.truffle.nfi.NativeAPIImpl