public abstract class com.oracle.svm.jvmtiagentbase.JNIHandleSet
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.svm.jvmtiagentbase.JNIHandleSet
super_class: java.lang.Object
{
private static final int INITIAL_GLOBAL_HANDLE_CAPACITY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 16
private final java.util.concurrent.locks.ReentrantLock globalRefsLock;
descriptor: Ljava/util/concurrent/locks/ReentrantLock;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private com.oracle.svm.jni.nativeapi.JNIObjectHandle[] globalRefs;
descriptor: [Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
flags: (0x0002) ACC_PRIVATE
private int globalRefCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean destroyed;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
final com.oracle.svm.jni.nativeapi.JNIMethodId javaLangClassGetName;
descriptor: Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
flags: (0x0010) ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.oracle.svm.jvmtiagentbase.JNIHandleSet.$assertionsDisabled:Z
3: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(com.oracle.svm.jni.nativeapi.JNIEnvironment);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.locks.ReentrantLock
dup
invokespecial java.util.concurrent.locks.ReentrantLock.<init>:()V
putfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefsLock:Ljava/util/concurrent/locks/ReentrantLock;
2: aload 0
bipush 16
anewarray com.oracle.svm.jni.nativeapi.JNIObjectHandle
putfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefs:[Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3: aload 0
iconst_0
putfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefCount:I
4: aload 0
iconst_0
putfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.destroyed:Z
5: aload 0
aload 1
ldc "java/lang/Class"
invokevirtual com.oracle.svm.jvmtiagentbase.JNIHandleSet.findClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 6: aconst_null
astore 3
aconst_null
astore 4
7: ldc "getName"
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 5
start local 5 8: ldc "()Ljava/lang/String;"
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 6
start local 6 9: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetMethodID:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetMethodIDFunctionPointer;
aload 1
aload 2
aload 5
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
aload 6
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetMethodIDFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;Lorg/graalvm/nativeimage/c/type/CCharPointer;)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
putfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.javaLangClassGetName:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
10: aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.javaLangClassGetName:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNonNull:()Z
invokestatic com.oracle.svm.core.util.VMError.guarantee:(Z)V
11: aload 6
ifnull 14
aload 6
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
goto 14
StackMap locals: com.oracle.svm.jvmtiagentbase.JNIHandleSet com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack: java.lang.Throwable
12: astore 3
aload 6
ifnull 13
aload 6
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 6 StackMap locals:
StackMap stack:
13: aload 3
athrow
StackMap locals:
StackMap stack:
14: aload 5
ifnull 22
aload 5
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
goto 22
StackMap locals:
StackMap stack: java.lang.Throwable
15: astore 4
aload 3
ifnonnull 16
aload 4
astore 3
goto 17
StackMap locals:
StackMap stack:
16: aload 3
aload 4
if_acmpeq 17
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
17: aload 5
ifnull 18
aload 5
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 5 StackMap locals:
StackMap stack:
18: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
19: astore 4
aload 3
ifnonnull 20
aload 4
astore 3
goto 21
StackMap locals:
StackMap stack:
20: aload 3
aload 4
if_acmpeq 21
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
21: aload 3
athrow
22: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
0 23 1 env Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
6 23 2 javaLangClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
8 18 5 name Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
9 13 6 signature Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
Exception table:
from to target type
9 11 12 any
8 14 15 any
7 19 19 any
MethodParameters:
Name Flags
env
public com.oracle.svm.jni.nativeapi.JNIObjectHandle findClass(com.oracle.svm.jni.nativeapi.JNIEnvironment, java.lang.String);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.svm.jvmtiagentbase.JNIHandleSet.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.destroyed:Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aconst_null
astore 3
aconst_null
astore 4
2: aload 2
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 5
start local 5 3: invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getFindClass:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$FindClassFunctionPointer;
aload 1
aload 5
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FindClassFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lorg/graalvm/nativeimage/c/type/CCharPointer;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 4: aload 6
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
invokestatic com.oracle.svm.core.util.VMError.guarantee:(Z)V
5: aload 6
6: aload 5
ifnull 7
aload 5
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
7: StackMap locals: com.oracle.svm.jvmtiagentbase.JNIHandleSet com.oracle.svm.jni.nativeapi.JNIEnvironment java.lang.String java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack: com.oracle.svm.jni.nativeapi.JNIObjectHandle
areturn
end local 6 StackMap locals: com.oracle.svm.jvmtiagentbase.JNIHandleSet com.oracle.svm.jni.nativeapi.JNIEnvironment java.lang.String java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack: java.lang.Throwable
8: astore 3
9: aload 5
ifnull 10
aload 5
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 5 StackMap locals:
StackMap stack:
10: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 4
aload 3
ifnonnull 12
aload 4
astore 3
goto 13
StackMap locals:
StackMap stack:
12: aload 3
aload 4
if_acmpeq 13
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
13: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
0 14 1 env Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 14 2 className Ljava/lang/String;
3 10 5 name Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
4 8 6 h Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
Exception table:
from to target type
3 6 8 any
2 7 11 any
8 11 11 any
MethodParameters:
Name Flags
env
className
public com.oracle.svm.jni.nativeapi.JNIObjectHandle newClassGlobalRef(com.oracle.svm.jni.nativeapi.JNIEnvironment, java.lang.String);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.svm.jvmtiagentbase.JNIHandleSet.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.destroyed:Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
aload 1
aload 2
invokevirtual com.oracle.svm.jvmtiagentbase.JNIHandleSet.findClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
invokevirtual com.oracle.svm.jvmtiagentbase.JNIHandleSet.newTrackedGlobalRef:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
0 2 1 env Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 2 2 className Ljava/lang/String;
MethodParameters:
Name Flags
env
className
public com.oracle.svm.jni.nativeapi.JNIMethodId getMethodId(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, java.lang.String, java.lang.String, boolean);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: getstatic com.oracle.svm.jvmtiagentbase.JNIHandleSet.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.destroyed:Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
aload 4
iload 5
invokevirtual com.oracle.svm.jvmtiagentbase.JNIHandleSet.getMethodIdOptional:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 6
start local 6 2: aload 6
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNonNull:()Z
invokestatic com.oracle.svm.core.util.VMError.guarantee:(Z)V
3: aload 6
areturn
end local 6 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 4 0 this Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
0 4 1 env Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 4 2 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 4 3 name Ljava/lang/String;
0 4 4 signature Ljava/lang/String;
0 4 5 isStatic Z
2 4 6 id Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
MethodParameters:
Name Flags
env
clazz
name
signature
isStatic
public com.oracle.svm.jni.nativeapi.JNIMethodId getMethodIdOptional(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, java.lang.String, java.lang.String, boolean);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: getstatic com.oracle.svm.jvmtiagentbase.JNIHandleSet.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.destroyed:Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aconst_null
astore 6
aconst_null
astore 7
2: aload 3
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 8
start local 8 3: aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 9
start local 9 4: iload 5
ifeq 9
5: invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetStaticMethodID:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetMethodIDFunctionPointer;
aload 1
aload 2
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetMethodIDFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;Lorg/graalvm/nativeimage/c/type/CCharPointer;)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
6: aload 9
ifnull 7
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
StackMap locals: com.oracle.svm.jvmtiagentbase.JNIHandleSet com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String java.lang.String int java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack: com.oracle.svm.jni.nativeapi.JNIMethodId
7: aload 8
ifnull 8
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
8: StackMap locals:
StackMap stack: com.oracle.svm.jni.nativeapi.JNIMethodId
areturn
9: StackMap locals:
StackMap stack:
invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetMethodID:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetMethodIDFunctionPointer;
aload 1
aload 2
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetMethodIDFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;Lorg/graalvm/nativeimage/c/type/CCharPointer;)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
10: aload 9
ifnull 11
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
StackMap locals:
StackMap stack: com.oracle.svm.jni.nativeapi.JNIMethodId
11: aload 8
ifnull 12
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
12: StackMap locals:
StackMap stack: com.oracle.svm.jni.nativeapi.JNIMethodId
areturn
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 6
14: aload 9
ifnull 15
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 9 StackMap locals:
StackMap stack:
15: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
16: astore 7
aload 6
ifnonnull 17
aload 7
astore 6
goto 18
StackMap locals:
StackMap stack:
17: aload 6
aload 7
if_acmpeq 18
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
18: aload 8
ifnull 19
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 8 StackMap locals:
StackMap stack:
19: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
20: astore 7
aload 6
ifnonnull 21
aload 7
astore 6
goto 22
StackMap locals:
StackMap stack:
21: aload 6
aload 7
if_acmpeq 22
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
22: aload 6
athrow
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 23 0 this Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
0 23 1 env Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 23 2 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 23 3 name Ljava/lang/String;
0 23 4 signature Ljava/lang/String;
0 23 5 isStatic Z
3 19 8 cname Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
4 15 9 csignature Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
Exception table:
from to target type
4 6 13 any
9 10 13 any
3 7 16 any
9 11 16 any
13 16 16 any
2 8 20 any
9 12 20 any
13 20 20 any
MethodParameters:
Name Flags
env
clazz
name
signature
isStatic
public com.oracle.svm.jni.nativeapi.JNIFieldId getFieldId(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, java.lang.String, java.lang.String, boolean);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: getstatic com.oracle.svm.jvmtiagentbase.JNIHandleSet.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.destroyed:Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
aload 4
iload 5
invokevirtual com.oracle.svm.jvmtiagentbase.JNIHandleSet.getFieldIdOptional:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
astore 6
start local 6 2: aload 6
invokeinterface com.oracle.svm.jni.nativeapi.JNIFieldId.isNonNull:()Z
invokestatic com.oracle.svm.core.util.VMError.guarantee:(Z)V
3: aload 6
areturn
end local 6 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 4 0 this Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
0 4 1 env Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 4 2 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 4 3 name Ljava/lang/String;
0 4 4 signature Ljava/lang/String;
0 4 5 isStatic Z
2 4 6 id Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
MethodParameters:
Name Flags
env
clazz
name
signature
isStatic
public com.oracle.svm.jni.nativeapi.JNIFieldId getFieldIdOptional(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, java.lang.String, java.lang.String, boolean);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: getstatic com.oracle.svm.jvmtiagentbase.JNIHandleSet.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.destroyed:Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aconst_null
astore 6
aconst_null
astore 7
2: aload 3
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 8
start local 8 3: aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 9
start local 9 4: iload 5
ifeq 9
5: invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetStaticFieldID:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetFieldIDFunctionPointer;
aload 1
aload 2
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetFieldIDFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;Lorg/graalvm/nativeimage/c/type/CCharPointer;)Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
6: aload 9
ifnull 7
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
StackMap locals: com.oracle.svm.jvmtiagentbase.JNIHandleSet com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String java.lang.String int java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack: com.oracle.svm.jni.nativeapi.JNIFieldId
7: aload 8
ifnull 8
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
8: StackMap locals:
StackMap stack: com.oracle.svm.jni.nativeapi.JNIFieldId
areturn
9: StackMap locals:
StackMap stack:
invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetFieldID:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetFieldIDFunctionPointer;
aload 1
aload 2
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetFieldIDFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;Lorg/graalvm/nativeimage/c/type/CCharPointer;)Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
10: aload 9
ifnull 11
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
StackMap locals:
StackMap stack: com.oracle.svm.jni.nativeapi.JNIFieldId
11: aload 8
ifnull 12
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
12: StackMap locals:
StackMap stack: com.oracle.svm.jni.nativeapi.JNIFieldId
areturn
StackMap locals:
StackMap stack: java.lang.Throwable
13: astore 6
14: aload 9
ifnull 15
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 9 StackMap locals:
StackMap stack:
15: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
16: astore 7
aload 6
ifnonnull 17
aload 7
astore 6
goto 18
StackMap locals:
StackMap stack:
17: aload 6
aload 7
if_acmpeq 18
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
18: aload 8
ifnull 19
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 8 StackMap locals:
StackMap stack:
19: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
20: astore 7
aload 6
ifnonnull 21
aload 7
astore 6
goto 22
StackMap locals:
StackMap stack:
21: aload 6
aload 7
if_acmpeq 22
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
22: aload 6
athrow
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 23 0 this Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
0 23 1 env Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 23 2 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 23 3 name Ljava/lang/String;
0 23 4 signature Ljava/lang/String;
0 23 5 isStatic Z
3 19 8 cname Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
4 15 9 csignature Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
Exception table:
from to target type
4 6 13 any
9 10 13 any
3 7 16 any
9 11 16 any
13 16 16 any
2 8 20 any
9 12 20 any
13 20 20 any
MethodParameters:
Name Flags
env
clazz
name
signature
isStatic
public com.oracle.svm.jni.nativeapi.JNIObjectHandle newTrackedGlobalRef(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.svm.jvmtiagentbase.JNIHandleSet.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.destroyed:Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getNewGlobalRef:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$NewGlobalRefFunctionPointer;
aload 1
aload 2
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$NewGlobalRefFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: aload 3
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
invokestatic com.oracle.svm.core.util.VMError.guarantee:(Z)V
3: aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefsLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.lock:()V
4: aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefCount:I
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefs:[Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
arraylength
if_icmpne 6
5: aload 0
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefs:[Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefs:[Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
arraylength
iconst_2
imul
invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle[]
putfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefs:[Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
6: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefs:[Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefCount:I
aload 3
aastore
7: aload 0
dup
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefCount:I
iconst_1
iadd
putfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefCount:I
8: goto 12
StackMap locals:
StackMap stack: java.lang.Throwable
9: astore 4
10: aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefsLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
11: aload 4
athrow
12: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefsLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
13: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
0 14 1 env Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 14 2 ref Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 14 3 global Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
Exception table:
from to target type
4 9 9 any
MethodParameters:
Name Flags
env
ref
void destroy(com.oracle.svm.jni.nativeapi.JNIEnvironment);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)V
flags: (0x0000)
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: getstatic com.oracle.svm.jvmtiagentbase.JNIHandleSet.$assertionsDisabled:Z
ifne 1
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.destroyed:Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.destroyed:Z
2: iconst_0
istore 2
start local 2 3: goto 6
4: StackMap locals: int
StackMap stack:
invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getDeleteGlobalRef:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$DeleteGlobalRefFunctionPointer;
aload 1
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefs:[Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
iload 2
aaload
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$DeleteGlobalRefFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)V
5: iinc 2 1
StackMap locals:
StackMap stack:
6: iload 2
aload 0
getfield com.oracle.svm.jvmtiagentbase.JNIHandleSet.globalRefCount:I
if_icmplt 4
end local 2 7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
0 8 1 env Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
3 7 2 i I
MethodParameters:
Name Flags
env
}
SourceFile: "JNIHandleSet.java"
InnerClasses:
public abstract DeleteGlobalRefFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$DeleteGlobalRefFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
public abstract FindClassFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FindClassFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
public abstract GetFieldIDFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetFieldIDFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
public abstract GetMethodIDFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetMethodIDFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
public abstract NewGlobalRefFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$NewGlobalRefFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
public abstract CCharPointerHolder = org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder of org.graalvm.nativeimage.c.type.CTypeConversion