final class com.oracle.svm.agent.JniCallInterceptor
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.oracle.svm.agent.JniCallInterceptor
  super_class: java.lang.Object
{
  private static com.oracle.svm.agent.TraceWriter traceWriter;
    descriptor: Lcom/oracle/svm/agent/TraceWriter;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static com.oracle.svm.agent.NativeImageAgent agent;
    descriptor: Lcom/oracle/svm/agent/NativeImageAgent;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$DefineClassFunctionPointer> defineClassLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$DefineClassFunctionPointer;>;

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FindClassFunctionPointer> findClassLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$FindClassFunctionPointer;>;

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetMethodIDFunctionPointer> getMethodIDLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetMethodIDFunctionPointer;>;

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetMethodIDFunctionPointer> getStaticMethodIDLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetMethodIDFunctionPointer;>;

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetFieldIDFunctionPointer> getFieldIDLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetFieldIDFunctionPointer;>;

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetFieldIDFunctionPointer> getStaticFieldIDLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetFieldIDFunctionPointer;>;

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ThrowNewFunctionPointer> throwNewLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$ThrowNewFunctionPointer;>;

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FromReflectedMethodFunctionPointer> fromReflectedMethodLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$FromReflectedMethodFunctionPointer;>;

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FromReflectedFieldFunctionPointer> fromReflectedFieldLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$FromReflectedFieldFunctionPointer;>;

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ToReflectedMethodFunctionPointer> toReflectedMethodLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$ToReflectedMethodFunctionPointer;>;

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ToReflectedFieldFunctionPointer> toReflectedFieldLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$ToReflectedFieldFunctionPointer;>;

  private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$NewObjectArrayFunctionPointer> newObjectArrayLiteral;
    descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$NewObjectArrayFunctionPointer;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=0, args_size=0
         0: .line 314
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
         1: .line 315
            ldc "defineClass"
            iconst_5
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
            dup
            iconst_2
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
            dup
            iconst_3
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
            dup
            iconst_4
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
         2: .line 314
            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.agent.JniCallInterceptor.defineClassLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
         3: .line 317
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
         4: .line 318
            ldc "findClass"
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
         5: .line 317
            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.agent.JniCallInterceptor.findClassLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
         6: .line 320
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
         7: .line 321
            ldc "getMethodID"
            iconst_4
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
            dup
            iconst_2
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
            dup
            iconst_3
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
         8: .line 320
            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.agent.JniCallInterceptor.getMethodIDLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
         9: .line 323
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
        10: .line 324
            ldc "getStaticMethodID"
            iconst_4
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
            dup
            iconst_2
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
            dup
            iconst_3
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
        11: .line 323
            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.agent.JniCallInterceptor.getStaticMethodIDLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
        12: .line 326
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
        13: .line 327
            ldc "getFieldID"
            iconst_4
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
            dup
            iconst_2
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
            dup
            iconst_3
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
        14: .line 326
            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.agent.JniCallInterceptor.getFieldIDLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
        15: .line 329
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
        16: .line 330
            ldc "getStaticFieldID"
            iconst_4
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
            dup
            iconst_2
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
            dup
            iconst_3
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
        17: .line 329
            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.agent.JniCallInterceptor.getStaticFieldIDLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
        18: .line 332
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
        19: .line 333
            ldc "throwNew"
            iconst_3
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
            dup
            iconst_2
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointer;
            aastore
        20: .line 332
            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.agent.JniCallInterceptor.throwNewLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
        21: .line 335
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
        22: .line 336
            ldc "fromReflectedMethod"
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
        23: .line 335
            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.agent.JniCallInterceptor.fromReflectedMethodLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
        24: .line 338
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
        25: .line 339
            ldc "fromReflectedField"
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
        26: .line 338
            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.agent.JniCallInterceptor.fromReflectedFieldLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
        27: .line 341
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
        28: .line 342
            ldc "toReflectedMethod"
            iconst_4
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
            dup
            iconst_2
            ldc Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
            aastore
            dup
            iconst_3
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            aastore
        29: .line 341
            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.agent.JniCallInterceptor.toReflectedMethodLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
        30: .line 344
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
        31: .line 345
            ldc "toReflectedField"
            iconst_4
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
            dup
            iconst_2
            ldc Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
            aastore
            dup
            iconst_3
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            aastore
        32: .line 344
            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.agent.JniCallInterceptor.toReflectedFieldLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
        33: .line 347
            ldc Lcom/oracle/svm/agent/JniCallInterceptor;
        34: .line 348
            ldc "newObjectArray"
            iconst_4
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            aastore
            dup
            iconst_1
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            dup
            iconst_2
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
            dup
            iconst_3
            ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aastore
        35: .line 347
            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.agent.JniCallInterceptor.newObjectArrayLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
        36: .line 348
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.svm.agent.JniCallInterceptor this
         0: .line 72
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.oracle.svm.agent.JniCallInterceptor this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/agent/JniCallInterceptor;

  private static boolean shouldTrace();
    descriptor: ()Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 78
            getstatic com.oracle.svm.agent.JniCallInterceptor.traceWriter:Lcom/oracle/svm/agent/TraceWriter;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void traceCall(com.oracle.svm.jni.nativeapi.JNIEnvironment, java.lang.String, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle, java.lang.Object, java.lang.Object[]);
    descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
    flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
    Code:
      stack=9, locals=8, args_size=7
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // java.lang.String function
        start local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        start local 3 // com.oracle.svm.jni.nativeapi.JNIObjectHandle declaringClass
        start local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        start local 5 // java.lang.Object result
        start local 6 // java.lang.Object[] args
         0: .line 82
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getExceptionOccurred:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$ExceptionOccurredFunctionPointer;
            aload 0 /* env */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ExceptionOccurredFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 7 /* pending */
        start local 7 // com.oracle.svm.jni.nativeapi.JNIObjectHandle pending
         1: .line 83
            aload 0 /* env */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
            pop
         2: .line 85
            getstatic com.oracle.svm.agent.JniCallInterceptor.traceWriter:Lcom/oracle/svm/agent/TraceWriter;
            ldc "jni"
         3: .line 86
            aload 1 /* function */
         4: .line 87
            aload 0 /* env */
            aload 2 /* clazz */
            aconst_null
            getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getClassNameOr:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
         5: .line 88
            aload 0 /* env */
            aload 3 /* declaringClass */
            aconst_null
            getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getClassNameOr:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
         6: .line 89
            aload 0 /* env */
            aload 4 /* callerClass */
            aconst_null
            getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getClassNameOr:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
         7: .line 90
            aload 5 /* result */
         8: .line 91
            aload 6 /* args */
         9: .line 85
            invokevirtual com.oracle.svm.agent.TraceWriter.traceCall:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;)V
        10: .line 92
            aload 0 /* env */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.checkNoException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)V
        11: .line 94
            aload 7 /* pending */
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
            ifeq 13
        12: .line 95
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getThrow:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$ThrowFunctionPointer;
            aload 0 /* env */
            aload 7 /* pending */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ThrowFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)I
            invokestatic com.oracle.svm.jvmtiagentbase.Support.checkJni:(I)V
        13: .line 97
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
      StackMap stack:
            return
        end local 7 // com.oracle.svm.jni.nativeapi.JNIObjectHandle pending
        end local 6 // java.lang.Object[] args
        end local 5 // java.lang.Object result
        end local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 3 // com.oracle.svm.jni.nativeapi.JNIObjectHandle declaringClass
        end local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        end local 1 // java.lang.String function
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   14     0             env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0   14     1        function  Ljava/lang/String;
            0   14     2           clazz  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0   14     3  declaringClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0   14     4     callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0   14     5          result  Ljava/lang/Object;
            0   14     6            args  [Ljava/lang/Object;
            1   14     7         pending  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    MethodParameters:
                Name  Flags
      env             
      function        
      clazz           
      declaringClass  
      callerClass     
      result          
      args            

  private static com.oracle.svm.jni.nativeapi.JNIObjectHandle defineClass(com.oracle.svm.jni.nativeapi.JNIEnvironment, org.graalvm.nativeimage.c.type.CCharPointer, com.oracle.svm.jni.nativeapi.JNIObjectHandle, org.graalvm.nativeimage.c.type.CCharPointer, int);
    descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lorg/graalvm/nativeimage/c/type/CCharPointer;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=7, args_size=5
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // org.graalvm.nativeimage.c.type.CCharPointer name
        start local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle loader
        start local 3 // org.graalvm.nativeimage.c.type.CCharPointer buf
        start local 4 // int bufLen
         0: .line 102
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 5 /* callerClass */
        start local 5 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 103
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getDefineClass:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$DefineClassFunctionPointer;
            aload 0 /* env */
            aload 1 /* name */
            aload 2 /* loader */
            aload 3 /* buf */
            iload 4 /* bufLen */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$DefineClassFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lorg/graalvm/nativeimage/c/type/CCharPointer;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 6 /* result */
        start local 6 // com.oracle.svm.jni.nativeapi.JNIObjectHandle result
         2: .line 104
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 4
         3: .line 105
            aload 0 /* env */
            ldc "DefineClass"
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            aload 5 /* callerClass */
            aload 6 /* result */
            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 java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* name */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            aastore
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
         4: .line 107
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
      StackMap stack:
            aload 6 /* result */
            areturn
        end local 6 // com.oracle.svm.jni.nativeapi.JNIObjectHandle result
        end local 5 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 4 // int bufLen
        end local 3 // org.graalvm.nativeimage.c.type.CCharPointer buf
        end local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle loader
        end local 1 // org.graalvm.nativeimage.c.type.CCharPointer name
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0          env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0    5     1         name  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            0    5     2       loader  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0    5     3          buf  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            0    5     4       bufLen  I
            1    5     5  callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2    5     6       result  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "DefineClass")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
        Name  Flags
      env     
      name    
      loader  
      buf     
      bufLen  

  private static com.oracle.svm.jni.nativeapi.JNIObjectHandle getCallerClass(com.oracle.svm.jni.nativeapi.JNIEnvironment);
    descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
         0: .line 112
            iconst_0
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getCallerClass:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 2
         1: .line 114
            aload 0 /* env */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.checkNoException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)V
         2: .line 112
            aload 2
            areturn
         3: .line 113
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 1
         4: .line 114
            aload 0 /* env */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.checkNoException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)V
         5: .line 115
            aload 1
            athrow
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0   env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
      Exception table:
        from    to  target  type
           0     1       3  any
    MethodParameters:
      Name  Flags
      env   

  private static com.oracle.svm.jni.nativeapi.JNIObjectHandle findClass(com.oracle.svm.jni.nativeapi.JNIEnvironment, org.graalvm.nativeimage.c.type.CCharPointer);
    descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lorg/graalvm/nativeimage/c/type/CCharPointer;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=4, args_size=2
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // org.graalvm.nativeimage.c.type.CCharPointer name
         0: .line 121
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 2 /* callerClass */
        start local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 122
            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 0 /* env */
            aload 1 /* name */
            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 3 /* result */
        start local 3 // com.oracle.svm.jni.nativeapi.JNIObjectHandle result
         2: .line 123
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            aload 3 /* result */
            invokeinterface org.graalvm.word.SignedWord.equal:(Lorg/graalvm/word/ComparableWord;)Z
            ifne 3
            aload 0 /* env */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
            ifeq 4
         3: .line 124
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
      StackMap stack:
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            astore 3 /* result */
         4: .line 126
      StackMap locals:
      StackMap stack:
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 6
         5: .line 127
            aload 0 /* env */
            ldc "FindClass"
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            aload 2 /* callerClass */
            aload 3 /* result */
            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 java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* name */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            aastore
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
         6: .line 129
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 3 // com.oracle.svm.jni.nativeapi.JNIObjectHandle result
        end local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 1 // org.graalvm.nativeimage.c.type.CCharPointer name
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0          env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0    7     1         name  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            1    7     2  callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2    7     3       result  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "FindClass")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
      Name  Flags
      env   
      name  

  private static com.oracle.svm.jni.nativeapi.JNIMethodId getMethodID(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, org.graalvm.nativeimage.c.type.CCharPointer, org.graalvm.nativeimage.c.type.CCharPointer);
    descriptor: (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;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=6, args_size=4
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        start local 2 // org.graalvm.nativeimage.c.type.CCharPointer name
        start local 3 // org.graalvm.nativeimage.c.type.CCharPointer signature
         0: .line 135
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 4 /* callerClass */
        start local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 136
            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 0 /* env */
            aload 1 /* clazz */
            aload 2 /* name */
            aload 3 /* signature */
            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;
            astore 5 /* result */
        start local 5 // com.oracle.svm.jni.nativeapi.JNIMethodId result
         2: .line 137
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 4
         3: .line 138
            aload 0 /* env */
            ldc "GetMethodID"
            aload 1 /* clazz */
            aload 5 /* result */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getMethodDeclaringClass:(Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aload 4 /* callerClass */
            aload 5 /* result */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNonNull:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* name */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 3 /* signature */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            aastore
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
         4: .line 140
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIMethodId
      StackMap stack:
            aload 5 /* result */
            areturn
        end local 5 // com.oracle.svm.jni.nativeapi.JNIMethodId result
        end local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 3 // org.graalvm.nativeimage.c.type.CCharPointer signature
        end local 2 // org.graalvm.nativeimage.c.type.CCharPointer name
        end local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0          env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0    5     1        clazz  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0    5     2         name  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            0    5     3    signature  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            1    5     4  callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2    5     5       result  Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "GetMethodID")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
           Name  Flags
      env        
      clazz      
      name       
      signature  

  private static com.oracle.svm.jni.nativeapi.JNIMethodId getStaticMethodID(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, org.graalvm.nativeimage.c.type.CCharPointer, org.graalvm.nativeimage.c.type.CCharPointer);
    descriptor: (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;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=6, args_size=4
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        start local 2 // org.graalvm.nativeimage.c.type.CCharPointer name
        start local 3 // org.graalvm.nativeimage.c.type.CCharPointer signature
         0: .line 146
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 4 /* callerClass */
        start local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 147
            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 0 /* env */
            aload 1 /* clazz */
            aload 2 /* name */
            aload 3 /* signature */
            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;
            astore 5 /* result */
        start local 5 // com.oracle.svm.jni.nativeapi.JNIMethodId result
         2: .line 148
            aload 5 /* result */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNonNull:()Z
            pop
         3: .line 149
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 5
         4: .line 150
            aload 0 /* env */
            ldc "GetStaticMethodID"
            aload 1 /* clazz */
            aload 5 /* result */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getMethodDeclaringClass:(Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aload 4 /* callerClass */
            aload 5 /* result */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNonNull:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* name */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 3 /* signature */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            aastore
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
         5: .line 152
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIMethodId
      StackMap stack:
            aload 5 /* result */
            areturn
        end local 5 // com.oracle.svm.jni.nativeapi.JNIMethodId result
        end local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 3 // org.graalvm.nativeimage.c.type.CCharPointer signature
        end local 2 // org.graalvm.nativeimage.c.type.CCharPointer name
        end local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    6     0          env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0    6     1        clazz  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0    6     2         name  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            0    6     3    signature  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            1    6     4  callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2    6     5       result  Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "GetStaticMethodID")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
           Name  Flags
      env        
      clazz      
      name       
      signature  

  private static com.oracle.svm.jni.nativeapi.JNIFieldId getFieldID(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, org.graalvm.nativeimage.c.type.CCharPointer, org.graalvm.nativeimage.c.type.CCharPointer);
    descriptor: (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;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=6, args_size=4
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        start local 2 // org.graalvm.nativeimage.c.type.CCharPointer name
        start local 3 // org.graalvm.nativeimage.c.type.CCharPointer signature
         0: .line 158
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 4 /* callerClass */
        start local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 159
            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 0 /* env */
            aload 1 /* clazz */
            aload 2 /* name */
            aload 3 /* signature */
            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;
            astore 5 /* result */
        start local 5 // com.oracle.svm.jni.nativeapi.JNIFieldId result
         2: .line 160
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 4
         3: .line 161
            aload 0 /* env */
            ldc "GetFieldID"
            aload 1 /* clazz */
            aload 1 /* clazz */
            aload 5 /* result */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getFieldDeclaringClass:(Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIFieldId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aload 4 /* callerClass */
            aload 5 /* result */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFieldId.isNonNull:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* name */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 3 /* signature */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            aastore
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
         4: .line 163
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIFieldId
      StackMap stack:
            aload 5 /* result */
            areturn
        end local 5 // com.oracle.svm.jni.nativeapi.JNIFieldId result
        end local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 3 // org.graalvm.nativeimage.c.type.CCharPointer signature
        end local 2 // org.graalvm.nativeimage.c.type.CCharPointer name
        end local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0          env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0    5     1        clazz  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0    5     2         name  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            0    5     3    signature  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            1    5     4  callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2    5     5       result  Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "GetFieldID")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
           Name  Flags
      env        
      clazz      
      name       
      signature  

  private static com.oracle.svm.jni.nativeapi.JNIFieldId getStaticFieldID(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, org.graalvm.nativeimage.c.type.CCharPointer, org.graalvm.nativeimage.c.type.CCharPointer);
    descriptor: (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;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=6, args_size=4
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        start local 2 // org.graalvm.nativeimage.c.type.CCharPointer name
        start local 3 // org.graalvm.nativeimage.c.type.CCharPointer signature
         0: .line 169
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 4 /* callerClass */
        start local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 170
            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 0 /* env */
            aload 1 /* clazz */
            aload 2 /* name */
            aload 3 /* signature */
            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;
            astore 5 /* result */
        start local 5 // com.oracle.svm.jni.nativeapi.JNIFieldId result
         2: .line 171
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 4
         3: .line 172
            aload 0 /* env */
            ldc "GetStaticFieldID"
            aload 1 /* clazz */
            aload 1 /* clazz */
            aload 5 /* result */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getFieldDeclaringClass:(Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIFieldId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            aload 4 /* callerClass */
            aload 5 /* result */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFieldId.isNonNull:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* name */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            aastore
            dup
            iconst_1
            aload 3 /* signature */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            aastore
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
         4: .line 174
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIFieldId
      StackMap stack:
            aload 5 /* result */
            areturn
        end local 5 // com.oracle.svm.jni.nativeapi.JNIFieldId result
        end local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 3 // org.graalvm.nativeimage.c.type.CCharPointer signature
        end local 2 // org.graalvm.nativeimage.c.type.CCharPointer name
        end local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0          env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0    5     1        clazz  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0    5     2         name  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            0    5     3    signature  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            1    5     4  callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2    5     5       result  Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "GetStaticFieldID")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
           Name  Flags
      env        
      clazz      
      name       
      signature  

  private static int throwNew(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, org.graalvm.nativeimage.c.type.CCharPointer);
    descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=5, args_size=3
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        start local 2 // org.graalvm.nativeimage.c.type.CCharPointer message
         0: .line 180
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 3 /* callerClass */
        start local 3 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 181
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getThrowNew:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$ThrowNewFunctionPointer;
            aload 0 /* env */
            aload 1 /* clazz */
            aload 2 /* message */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ThrowNewFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;)I
            istore 4 /* result */
        start local 4 // int result
         2: .line 182
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 6
         3: .line 183
            aload 0 /* env */
            ldc "ThrowNew"
            aload 1 /* clazz */
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            aload 3 /* callerClass */
            iload 4 /* result */
            invokestatic com.oracle.svm.jni.nativeapi.JNIErrors.JNI_OK:()I
            if_icmpne 4
            iconst_1
            goto 5
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle org.graalvm.nativeimage.c.type.CCharPointer com.oracle.svm.jni.nativeapi.JNIObjectHandle int
      StackMap stack: com.oracle.svm.jni.nativeapi.JNIEnvironment java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
         4: iconst_0
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle org.graalvm.nativeimage.c.type.CCharPointer com.oracle.svm.jni.nativeapi.JNIObjectHandle int
      StackMap stack: com.oracle.svm.jni.nativeapi.JNIEnvironment java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle int
         5: invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
            aastore
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
         6: .line 185
      StackMap locals:
      StackMap stack:
            iload 4 /* result */
            ireturn
        end local 4 // int result
        end local 3 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 2 // org.graalvm.nativeimage.c.type.CCharPointer message
        end local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0          env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0    7     1        clazz  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0    7     2      message  Lorg/graalvm/nativeimage/c/type/CCharPointer;
            1    7     3  callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2    7     4       result  I
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "ThrowNew")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
         Name  Flags
      env      
      clazz    
      message  

  private static com.oracle.svm.jni.nativeapi.JNIMethodId fromReflectedMethod(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/JNIMethodId;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=9, args_size=2
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle method
         0: .line 191
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 2 /* callerClass */
        start local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 192
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getFromReflectedMethod:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$FromReflectedMethodFunctionPointer;
            aload 0 /* env */
            aload 1 /* method */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FromReflectedMethodFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
            astore 3 /* result */
        start local 3 // com.oracle.svm.jni.nativeapi.JNIMethodId result
         2: .line 193
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            astore 4 /* declaring */
        start local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle declaring
         3: .line 194
            aconst_null
            astore 5 /* name */
        start local 5 // java.lang.String name
         4: .line 195
            aconst_null
            astore 6 /* signature */
        start local 6 // java.lang.String signature
         5: .line 196
            aload 3 /* result */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNonNull:()Z
            ifeq 14
         6: .line 197
            aload 3 /* result */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getMethodDeclaringClass:(Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 4 /* declaring */
         7: .line 198
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
            invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.nativeimage.c.type.CCharPointerPointer
            astore 7 /* namePtr */
        start local 7 // org.graalvm.nativeimage.c.type.CCharPointerPointer namePtr
         8: .line 199
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
            invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.nativeimage.c.type.CCharPointerPointer
            astore 8 /* signaturePtr */
        start local 8 // org.graalvm.nativeimage.c.type.CCharPointerPointer signaturePtr
         9: .line 200
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetMethodName:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetMethodNameFunctionPointer;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
            aload 3 /* result */
            aload 7 /* namePtr */
            aload 8 /* signaturePtr */
            invokestatic org.graalvm.word.WordFactory.nullPointer:()Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.nativeimage.c.type.CCharPointerPointer
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetMethodNameFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiError.JVMTI_ERROR_NONE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            if_acmpne 14
        10: .line 201
            aload 7 /* namePtr */
            invokeinterface org.graalvm.nativeimage.c.type.CCharPointerPointer.read:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            astore 5 /* name */
        11: .line 202
            aload 8 /* signaturePtr */
            invokeinterface org.graalvm.nativeimage.c.type.CCharPointerPointer.read:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            astore 6 /* signature */
        12: .line 203
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.Deallocate:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$DeallocateFunctionPointer;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
            aload 7 /* namePtr */
            invokeinterface org.graalvm.nativeimage.c.type.CCharPointerPointer.read:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$DeallocateFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lorg/graalvm/word/PointerBase;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            pop
        13: .line 204
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.Deallocate:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$DeallocateFunctionPointer;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
            aload 8 /* signaturePtr */
            invokeinterface org.graalvm.nativeimage.c.type.CCharPointerPointer.read:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$DeallocateFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lorg/graalvm/word/PointerBase;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            pop
        end local 8 // org.graalvm.nativeimage.c.type.CCharPointerPointer signaturePtr
        end local 7 // org.graalvm.nativeimage.c.type.CCharPointerPointer namePtr
        14: .line 207
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String java.lang.String
      StackMap stack:
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 16
        15: .line 208
            aload 0 /* env */
            ldc "FromReflectedMethod"
            aload 4 /* declaring */
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            aload 2 /* callerClass */
            aload 3 /* result */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNonNull:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* name */
            aastore
            dup
            iconst_1
            aload 6 /* signature */
            aastore
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
        16: .line 210
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 6 // java.lang.String signature
        end local 5 // java.lang.String name
        end local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle declaring
        end local 3 // com.oracle.svm.jni.nativeapi.JNIMethodId result
        end local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle method
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   17     0           env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0   17     1        method  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            1   17     2   callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2   17     3        result  Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
            3   17     4     declaring  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            4   17     5          name  Ljava/lang/String;
            5   17     6     signature  Ljava/lang/String;
            8   14     7       namePtr  Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
            9   14     8  signaturePtr  Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "FromReflectedMethod")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
        Name  Flags
      env     
      method  

  private static com.oracle.svm.jni.nativeapi.JNIFieldId fromReflectedField(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/JNIFieldId;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=6, args_size=2
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle field
         0: .line 216
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 2 /* callerClass */
        start local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 217
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getFromReflectedField:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$FromReflectedFieldFunctionPointer;
            aload 0 /* env */
            aload 1 /* field */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FromReflectedFieldFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
            astore 3 /* result */
        start local 3 // com.oracle.svm.jni.nativeapi.JNIFieldId result
         2: .line 218
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            astore 4 /* declaring */
        start local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle declaring
         3: .line 219
            getstatic com.oracle.svm.agent.TraceWriter.EXPLICIT_NULL:Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         4: .line 220
            aload 3 /* result */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFieldId.isNonNull:()Z
            ifeq 7
         5: .line 221
            aload 0 /* env */
            aload 1 /* field */
            getstatic com.oracle.svm.agent.JniCallInterceptor.agent:Lcom/oracle/svm/agent/NativeImageAgent;
            invokevirtual com.oracle.svm.agent.NativeImageAgent.handles:()Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
            checkcast com.oracle.svm.agent.NativeImageAgentJNIHandleSet
            getfield com.oracle.svm.agent.NativeImageAgentJNIHandleSet.javaLangReflectMemberGetDeclaringClass:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethod:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 4 /* declaring */
         6: .line 222
            aload 4 /* declaring */
            aload 3 /* result */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getFieldName:(Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIFieldId;)Ljava/lang/String;
            astore 5 /* name */
         7: .line 224
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIFieldId com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String
      StackMap stack:
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 9
         8: .line 225
            aload 0 /* env */
            ldc "FromReflectedField"
            aload 4 /* declaring */
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            aload 2 /* callerClass */
            aload 3 /* result */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFieldId.isNonNull:()Z
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 5 /* name */
            aastore
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
         9: .line 227
      StackMap locals:
      StackMap stack:
            aload 3 /* result */
            areturn
        end local 5 // java.lang.String name
        end local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle declaring
        end local 3 // com.oracle.svm.jni.nativeapi.JNIFieldId result
        end local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle field
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0          env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0   10     1        field  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            1   10     2  callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2   10     3       result  Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
            3   10     4    declaring  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            4   10     5         name  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "FromReflectedField")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
       Name  Flags
      env    
      field  

  private static com.oracle.svm.jni.nativeapi.JNIObjectHandle toReflectedMethod(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIMethodId, boolean);
    descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Z)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=11, args_size=4
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        start local 2 // com.oracle.svm.jni.nativeapi.JNIMethodId method
        start local 3 // boolean isStatic
         0: .line 233
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 4 /* callerClass */
        start local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 234
            aload 2 /* method */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getMethodDeclaringClass:(Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 5 /* declaring */
        start local 5 // com.oracle.svm.jni.nativeapi.JNIObjectHandle declaring
         2: .line 235
            aconst_null
            astore 6 /* name */
        start local 6 // java.lang.String name
         3: .line 236
            aconst_null
            astore 7 /* signature */
        start local 7 // java.lang.String signature
         4: .line 237
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
            invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.nativeimage.c.type.CCharPointerPointer
            astore 8 /* namePtr */
        start local 8 // org.graalvm.nativeimage.c.type.CCharPointerPointer namePtr
         5: .line 238
            ldc Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
            invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.nativeimage.c.type.CCharPointerPointer
            astore 9 /* signaturePtr */
        start local 9 // org.graalvm.nativeimage.c.type.CCharPointerPointer signaturePtr
         6: .line 239
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetMethodName:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetMethodNameFunctionPointer;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
            aload 2 /* method */
            aload 8 /* namePtr */
            aload 9 /* signaturePtr */
            invokestatic org.graalvm.word.WordFactory.nullPointer:()Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.nativeimage.c.type.CCharPointerPointer
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetMethodNameFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiError.JVMTI_ERROR_NONE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            if_acmpne 11
         7: .line 240
            aload 8 /* namePtr */
            invokeinterface org.graalvm.nativeimage.c.type.CCharPointerPointer.read:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            astore 6 /* name */
         8: .line 241
            aload 9 /* signaturePtr */
            invokeinterface org.graalvm.nativeimage.c.type.CCharPointerPointer.read:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.fromCString:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)Ljava/lang/String;
            astore 7 /* signature */
         9: .line 242
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.Deallocate:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$DeallocateFunctionPointer;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
            aload 8 /* namePtr */
            invokeinterface org.graalvm.nativeimage.c.type.CCharPointerPointer.read:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$DeallocateFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lorg/graalvm/word/PointerBase;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            pop
        10: .line 243
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.Deallocate:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$DeallocateFunctionPointer;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
            aload 9 /* signaturePtr */
            invokeinterface org.graalvm.nativeimage.c.type.CCharPointerPointer.read:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$DeallocateFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lorg/graalvm/word/PointerBase;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            pop
        11: .line 245
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIMethodId int com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String java.lang.String org.graalvm.nativeimage.c.type.CCharPointerPointer org.graalvm.nativeimage.c.type.CCharPointerPointer
      StackMap stack:
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getToReflectedMethod:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$ToReflectedMethodFunctionPointer;
            aload 0 /* env */
            aload 1 /* clazz */
            aload 2 /* method */
            iload 3 /* isStatic */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ToReflectedMethodFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Z)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 10 /* result */
        start local 10 // com.oracle.svm.jni.nativeapi.JNIObjectHandle result
        12: .line 246
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 14
        13: .line 247
            aload 0 /* env */
            ldc "ToReflectedMethod"
            aload 1 /* clazz */
            aload 5 /* declaring */
            aload 4 /* callerClass */
            aload 10 /* result */
            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 java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 6 /* name */
            aastore
            dup
            iconst_1
            aload 7 /* signature */
            aastore
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
        14: .line 249
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
      StackMap stack:
            aload 10 /* result */
            areturn
        end local 10 // com.oracle.svm.jni.nativeapi.JNIObjectHandle result
        end local 9 // org.graalvm.nativeimage.c.type.CCharPointerPointer signaturePtr
        end local 8 // org.graalvm.nativeimage.c.type.CCharPointerPointer namePtr
        end local 7 // java.lang.String signature
        end local 6 // java.lang.String name
        end local 5 // com.oracle.svm.jni.nativeapi.JNIObjectHandle declaring
        end local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 3 // boolean isStatic
        end local 2 // com.oracle.svm.jni.nativeapi.JNIMethodId method
        end local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0           env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0   15     1         clazz  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0   15     2        method  Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
            0   15     3      isStatic  Z
            1   15     4   callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2   15     5     declaring  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            3   15     6          name  Ljava/lang/String;
            4   15     7     signature  Ljava/lang/String;
            5   15     8       namePtr  Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
            6   15     9  signaturePtr  Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
           12   15    10        result  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "ToReflectedMethod")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
          Name  Flags
      env       
      clazz     
      method    
      isStatic  

  private static com.oracle.svm.jni.nativeapi.JNIObjectHandle toReflectedField(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIFieldId, boolean);
    descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIFieldId;Z)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=10, locals=8, args_size=4
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        start local 2 // com.oracle.svm.jni.nativeapi.JNIFieldId field
        start local 3 // boolean isStatic
         0: .line 255
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 4 /* callerClass */
        start local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 256
            aload 1 /* clazz */
            aload 2 /* field */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getFieldDeclaringClass:(Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIFieldId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 5 /* declaring */
        start local 5 // com.oracle.svm.jni.nativeapi.JNIObjectHandle declaring
         2: .line 257
            aload 1 /* clazz */
            aload 2 /* field */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.getFieldName:(Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIFieldId;)Ljava/lang/String;
            astore 6 /* name */
        start local 6 // java.lang.String name
         3: .line 258
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getToReflectedField:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$ToReflectedFieldFunctionPointer;
            aload 0 /* env */
            aload 1 /* clazz */
            aload 2 /* field */
            iload 3 /* isStatic */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ToReflectedFieldFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIFieldId;Z)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 7 /* result */
        start local 7 // com.oracle.svm.jni.nativeapi.JNIObjectHandle result
         4: .line 259
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 6
         5: .line 260
            aload 0 /* env */
            ldc "ToReflectedField"
            aload 1 /* clazz */
            aload 5 /* declaring */
            aload 4 /* callerClass */
            aload 7 /* result */
            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 java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 6 /* name */
            aastore
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
         6: .line 262
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIFieldId int com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle
      StackMap stack:
            aload 7 /* result */
            areturn
        end local 7 // com.oracle.svm.jni.nativeapi.JNIObjectHandle result
        end local 6 // java.lang.String name
        end local 5 // com.oracle.svm.jni.nativeapi.JNIObjectHandle declaring
        end local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 3 // boolean isStatic
        end local 2 // com.oracle.svm.jni.nativeapi.JNIFieldId field
        end local 1 // com.oracle.svm.jni.nativeapi.JNIObjectHandle clazz
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0          env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0    7     1        clazz  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0    7     2        field  Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
            0    7     3     isStatic  Z
            1    7     4  callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2    7     5    declaring  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            3    7     6         name  Ljava/lang/String;
            4    7     7       result  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "ToReflectedField")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
          Name  Flags
      env       
      clazz     
      field     
      isStatic  

  private static com.oracle.svm.jni.nativeapi.JNIObjectHandle newObjectArray(com.oracle.svm.jni.nativeapi.JNIEnvironment, int, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle);
    descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;ILcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=7, args_size=4
        start local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
        start local 1 // int length
        start local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle elementClass
        start local 3 // com.oracle.svm.jni.nativeapi.JNIObjectHandle initialElement
         0: .line 268
            aload 0 /* env */
            invokestatic com.oracle.svm.agent.JniCallInterceptor.getCallerClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 4 /* callerClass */
        start local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
         1: .line 269
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getNewObjectArray:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$NewObjectArrayFunctionPointer;
            aload 0 /* env */
            iload 1 /* length */
            aload 2 /* elementClass */
            aload 3 /* initialElement */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$NewObjectArrayFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;ILcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 5 /* result */
        start local 5 // com.oracle.svm.jni.nativeapi.JNIObjectHandle result
         2: .line 270
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            astore 6 /* resultClass */
        start local 6 // com.oracle.svm.jni.nativeapi.JNIObjectHandle resultClass
         3: .line 271
            aload 5 /* result */
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
            ifeq 7
            aload 0 /* env */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.testException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
            ifne 7
         4: .line 272
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetObjectClass:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetObjectClassFunctionPointer;
            aload 0 /* env */
            aload 5 /* result */
            invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetObjectClassFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            astore 6 /* resultClass */
         5: .line 273
            aload 0 /* env */
            invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
            ifeq 7
         6: .line 274
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            astore 6 /* resultClass */
         7: .line 277
      StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
      StackMap stack:
            invokestatic com.oracle.svm.agent.JniCallInterceptor.shouldTrace:()Z
            ifeq 9
         8: .line 278
            aload 0 /* env */
            ldc "NewObjectArray"
            aload 6 /* resultClass */
            invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
            checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
            aload 4 /* callerClass */
            aload 5 /* result */
            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 java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            iconst_0
            anewarray java.lang.Object
            invokestatic com.oracle.svm.agent.JniCallInterceptor.traceCall:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/Object;[Ljava/lang/Object;)V
         9: .line 280
      StackMap locals:
      StackMap stack:
            aload 5 /* result */
            areturn
        end local 6 // com.oracle.svm.jni.nativeapi.JNIObjectHandle resultClass
        end local 5 // com.oracle.svm.jni.nativeapi.JNIObjectHandle result
        end local 4 // com.oracle.svm.jni.nativeapi.JNIObjectHandle callerClass
        end local 3 // com.oracle.svm.jni.nativeapi.JNIObjectHandle initialElement
        end local 2 // com.oracle.svm.jni.nativeapi.JNIObjectHandle elementClass
        end local 1 // int length
        end local 0 // com.oracle.svm.jni.nativeapi.JNIEnvironment env
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0             env  Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
            0   10     1          length  I
            0   10     2    elementClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            0   10     3  initialElement  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            1   10     4     callerClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            2   10     5          result  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
            3   10     6     resultClass  Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
    RuntimeVisibleAnnotations: 
      org.graalvm.nativeimage.c.function.CEntryPoint(name = "NewObjectArray")
      com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
    MethodParameters:
                Name  Flags
      env             
      length          
      elementClass    
      initialElement  

  public static void onLoad(com.oracle.svm.agent.TraceWriter, com.oracle.svm.agent.NativeImageAgent);
    descriptor: (Lcom/oracle/svm/agent/TraceWriter;Lcom/oracle/svm/agent/NativeImageAgent;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.oracle.svm.agent.TraceWriter writer
        start local 1 // com.oracle.svm.agent.NativeImageAgent nativeImageTracingAgent
         0: .line 284
            aload 0 /* writer */
            putstatic com.oracle.svm.agent.JniCallInterceptor.traceWriter:Lcom/oracle/svm/agent/TraceWriter;
         1: .line 285
            aload 1 /* nativeImageTracingAgent */
            putstatic com.oracle.svm.agent.JniCallInterceptor.agent:Lcom/oracle/svm/agent/NativeImageAgent;
         2: .line 286
            return
        end local 1 // com.oracle.svm.agent.NativeImageAgent nativeImageTracingAgent
        end local 0 // com.oracle.svm.agent.TraceWriter writer
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    3     0                   writer  Lcom/oracle/svm/agent/TraceWriter;
            0    3     1  nativeImageTracingAgent  Lcom/oracle/svm/agent/NativeImageAgent;
    MethodParameters:
                         Name  Flags
      writer                   
      nativeImageTracingAgent  

  public static void onVMStart(com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv);
    descriptor: (Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv jvmti
         0: .line 289
            ldc Lorg/graalvm/nativeimage/c/type/WordPointer;
            invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
            checkcast org.graalvm.nativeimage.c.type.WordPointer
            astore 1 /* functionsPtr */
        start local 1 // org.graalvm.nativeimage.c.type.WordPointer functionsPtr
         1: .line 290
            aload 0 /* jvmti */
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv.getFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetJNIFunctionTable:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetJNIFunctionTableFunctionPointer;
            aload 0 /* jvmti */
            aload 1 /* functionsPtr */
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetJNIFunctionTableFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lorg/graalvm/nativeimage/c/type/WordPointer;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.check:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;)V
         2: .line 291
            aload 1 /* functionsPtr */
            invokeinterface org.graalvm.nativeimage.c.type.WordPointer.read:()Lorg/graalvm/word/WordBase;
            checkcast com.oracle.svm.jni.nativeapi.JNINativeInterface
            astore 2 /* functions */
        start local 2 // com.oracle.svm.jni.nativeapi.JNINativeInterface functions
         3: .line 292
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.defineClassLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$DefineClassFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setDefineClass:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$DefineClassFunctionPointer;)V
         4: .line 293
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.findClassLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FindClassFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setFindClass:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$FindClassFunctionPointer;)V
         5: .line 294
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.getMethodIDLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetMethodIDFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setGetMethodID:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetMethodIDFunctionPointer;)V
         6: .line 295
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.getStaticMethodIDLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetMethodIDFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setGetStaticMethodID:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetMethodIDFunctionPointer;)V
         7: .line 296
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.getFieldIDLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetFieldIDFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setGetFieldID:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetFieldIDFunctionPointer;)V
         8: .line 297
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.getStaticFieldIDLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetFieldIDFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setGetStaticFieldID:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetFieldIDFunctionPointer;)V
         9: .line 298
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.throwNewLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ThrowNewFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setThrowNew:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$ThrowNewFunctionPointer;)V
        10: .line 299
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.fromReflectedMethodLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FromReflectedMethodFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setFromReflectedMethod:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$FromReflectedMethodFunctionPointer;)V
        11: .line 300
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.toReflectedMethodLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ToReflectedMethodFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setToReflectedMethod:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$ToReflectedMethodFunctionPointer;)V
        12: .line 301
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.fromReflectedFieldLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FromReflectedFieldFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setFromReflectedField:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$FromReflectedFieldFunctionPointer;)V
        13: .line 302
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.toReflectedFieldLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ToReflectedFieldFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setToReflectedField:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$ToReflectedFieldFunctionPointer;)V
        14: .line 303
            aload 2 /* functions */
            getstatic com.oracle.svm.agent.JniCallInterceptor.newObjectArrayLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
            invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
            checkcast com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$NewObjectArrayFunctionPointer
            invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.setNewObjectArray:(Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$NewObjectArrayFunctionPointer;)V
        15: .line 304
            aload 0 /* jvmti */
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv.getFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.SetJNIFunctionTable:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$SetJNIFunctionTableFunctionPointer;
            aload 0 /* jvmti */
            aload 2 /* functions */
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$SetJNIFunctionTableFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.check:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;)V
        16: .line 305
            aload 0 /* jvmti */
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv.getFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.Deallocate:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$DeallocateFunctionPointer;
            aload 0 /* jvmti */
            aload 2 /* functions */
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$DeallocateFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lorg/graalvm/word/PointerBase;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.check:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;)V
        17: .line 306
            return
        end local 2 // com.oracle.svm.jni.nativeapi.JNINativeInterface functions
        end local 1 // org.graalvm.nativeimage.c.type.WordPointer functionsPtr
        end local 0 // com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv jvmti
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   18     0         jvmti  Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
            1   18     1  functionsPtr  Lorg/graalvm/nativeimage/c/type/WordPointer;
            3   18     2     functions  Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
    MethodParameters:
       Name  Flags
      jvmti  

  public static void onUnload();
    descriptor: ()V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 309
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.SetJNIFunctionTable:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$SetJNIFunctionTableFunctionPointer;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
            invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
            invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$SetJNIFunctionTableFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
            pop
         1: .line 311
            aconst_null
            putstatic com.oracle.svm.agent.JniCallInterceptor.traceWriter:Lcom/oracle/svm/agent/TraceWriter;
         2: .line 312
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "JniCallInterceptor.java"
InnerClasses:
  public abstract DefineClassFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$DefineClassFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
  public abstract ExceptionOccurredFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ExceptionOccurredFunctionPointer 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 FromReflectedFieldFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FromReflectedFieldFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
  public abstract FromReflectedMethodFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FromReflectedMethodFunctionPointer 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 GetObjectClassFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetObjectClassFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
  public abstract NewObjectArrayFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$NewObjectArrayFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
  public abstract ThrowFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ThrowFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
  public abstract ThrowNewFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ThrowNewFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
  public abstract ToReflectedFieldFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ToReflectedFieldFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
  public abstract ToReflectedMethodFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$ToReflectedMethodFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
  public abstract DeallocateFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$DeallocateFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
  public abstract GetJNIFunctionTableFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetJNIFunctionTableFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
  public abstract GetMethodNameFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetMethodNameFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
  public abstract SetJNIFunctionTableFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$SetJNIFunctionTableFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface