final class com.oracle.svm.agent.BreakpointInterceptor
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.oracle.svm.agent.BreakpointInterceptor
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 java.util.Map<java.lang.Long, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint> installedBreakpoints;
descriptor: Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/Map<Ljava/lang/Long;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;>;
private static java.util.Map<java.lang.Long, java.lang.Long> boundNativeMethods;
descriptor: Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/Map<Ljava/lang/Long;Ljava/lang/Long;>;
private static java.util.Map<java.lang.Long, com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint> nativeBreakpoints;
descriptor: Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/Map<Ljava/lang/Long;Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpoint;>;
private static boolean experimentalClassLoaderSupport;
descriptor: Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static boolean writeSerializationChecksums;
descriptor: Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.concurrent.ConcurrentMap<com.oracle.svm.agent.BreakpointInterceptor$MethodLocation, java.lang.Boolean> observedExplicitLoadClassCallSites;
descriptor: Ljava/util/concurrent/ConcurrentMap;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/concurrent/ConcurrentMap<Lcom/oracle/svm/agent/BreakpointInterceptor$MethodLocation;Ljava/lang/Boolean;>;
private static final java.util.concurrent.locks.ReentrantLock nativeBreakpointsInitLock;
descriptor: Ljava/util/concurrent/locks/ReentrantLock;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.ThreadLocal<java.lang.Boolean> recursive;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Ljava/lang/Boolean;>;
private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<com.oracle.svm.agent.BreakpointInterceptor$ObjectFieldOffsetFunctionPointer> nativeObjectFieldOffsetLiteral;
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/agent/BreakpointInterceptor$ObjectFieldOffsetFunctionPointer;>;
private static final com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification NATIVE_OBJECTFIELDOFFSET_BREAKPOINT_SPEC;
descriptor: Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<org.graalvm.nativeimage.c.function.CFunctionPointer> onBreakpointLiteral;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lorg/graalvm/nativeimage/c/function/CFunctionPointer;>;
private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<org.graalvm.nativeimage.c.function.CFunctionPointer> onNativeMethodBindLiteral;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lorg/graalvm/nativeimage/c/function/CFunctionPointer;>;
private static final org.graalvm.nativeimage.c.function.CEntryPointLiteral<org.graalvm.nativeimage.c.function.CFunctionPointer> onClassPrepareLiteral;
descriptor: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral<Lorg/graalvm/nativeimage/c/function/CFunctionPointer;>;
private static final com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification[] BREAKPOINT_SPECIFICATIONS;
descriptor: [Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification CLASSLOADER_LOAD_CLASS_BREAKPOINT_SPECIFICATION;
descriptor: Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification[] NATIVE_BREAKPOINT_SPECIFICATIONS;
descriptor: [Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=0, args_size=0
0: ldc Lcom/oracle/svm/agent/BreakpointInterceptor;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.oracle.svm.agent.BreakpointInterceptor.$assertionsDisabled:Z
3: iconst_0
putstatic com.oracle.svm.agent.BreakpointInterceptor.experimentalClassLoaderSupport:Z
4: iconst_0
putstatic com.oracle.svm.agent.BreakpointInterceptor.writeSerializationChecksums:Z
5: new java.util.concurrent.locks.ReentrantLock
dup
invokespecial java.util.concurrent.locks.ReentrantLock.<init>:()V
putstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpointsInitLock:Ljava/util/concurrent/locks/ReentrantLock;
6: invokedynamic get()Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
com/oracle/svm/agent/BreakpointInterceptor.lambda$0()Ljava/lang/Boolean; (6)
()Ljava/lang/Boolean;
invokestatic java.lang.ThreadLocal.withInitial:(Ljava/util/function/Supplier;)Ljava/lang/ThreadLocal;
putstatic com.oracle.svm.agent.BreakpointInterceptor.recursive:Ljava/lang/ThreadLocal;
7: ldc Lcom/oracle/svm/agent/BreakpointInterceptor;
ldc "nativeObjectFieldOffset"
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 Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aastore
8: 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.BreakpointInterceptor.nativeObjectFieldOffsetLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
9: new com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification
dup
10: ldc "sun/misc/Unsafe"
ldc "objectFieldOffset"
ldc "(Ljava/lang/reflect/Field;)J"
getstatic com.oracle.svm.agent.BreakpointInterceptor.nativeObjectFieldOffsetLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
11: invokespecial com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;)V
putstatic com.oracle.svm.agent.BreakpointInterceptor.NATIVE_OBJECTFIELDOFFSET_BREAKPOINT_SPEC:Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;
12: ldc Lcom/oracle/svm/agent/BreakpointInterceptor;
ldc "onBreakpoint"
iconst_5
anewarray java.lang.Class
dup
iconst_0
13: ldc Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
aastore
dup
iconst_1
ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
aastore
dup
iconst_2
ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aastore
dup
iconst_3
ldc Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aastore
dup
iconst_4
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
aastore
14: 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.BreakpointInterceptor.onBreakpointLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
15: ldc Lcom/oracle/svm/agent/BreakpointInterceptor;
ldc "onNativeMethodBind"
bipush 6
anewarray java.lang.Class
dup
iconst_0
16: ldc Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
aastore
dup
iconst_1
ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
aastore
dup
iconst_2
ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aastore
dup
iconst_3
ldc Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aastore
dup
iconst_4
ldc Lorg/graalvm/nativeimage/c/function/CodePointer;
aastore
dup
iconst_5
ldc Lorg/graalvm/nativeimage/c/type/WordPointer;
aastore
17: 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.BreakpointInterceptor.onNativeMethodBindLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
18: ldc Lcom/oracle/svm/agent/BreakpointInterceptor;
ldc "onClassPrepare"
iconst_4
anewarray java.lang.Class
dup
iconst_0
19: ldc Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
aastore
dup
iconst_1
ldc Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
aastore
dup
iconst_2
ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aastore
dup
iconst_3
ldc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aastore
20: 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.BreakpointInterceptor.onClassPrepareLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
21: bipush 49
anewarray com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
dup
iconst_0
22: ldc "java/lang/Class"
ldc "forName"
ldc "(Ljava/lang/String;)Ljava/lang/Class;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.forName(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
iconst_1
23: ldc "java/lang/Class"
ldc "forName"
ldc "(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.forName(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
iconst_2
24: ldc "java/lang/Class"
ldc "getFields"
ldc "()[Ljava/lang/reflect/Field;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getFields(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
iconst_3
25: ldc "java/lang/Class"
ldc "getMethods"
ldc "()[Ljava/lang/reflect/Method;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getMethods(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
iconst_4
26: ldc "java/lang/Class"
ldc "getConstructors"
ldc "()[Ljava/lang/reflect/Constructor;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getConstructors(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
iconst_5
27: ldc "java/lang/Class"
ldc "getClasses"
ldc "()[Ljava/lang/Class;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getClasses(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 6
28: ldc "java/lang/Class"
ldc "getDeclaredFields"
ldc "()[Ljava/lang/reflect/Field;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getDeclaredFields(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 7
29: ldc "java/lang/Class"
ldc "getDeclaredMethods"
ldc "()[Ljava/lang/reflect/Method;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getDeclaredMethods(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 8
30: ldc "java/lang/Class"
ldc "getDeclaredConstructors"
ldc "()[Ljava/lang/reflect/Constructor;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getDeclaredConstructors(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 9
31: ldc "java/lang/Class"
ldc "getDeclaredClasses"
ldc "()[Ljava/lang/Class;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getDeclaredClasses(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 10
32: ldc "java/lang/Class"
ldc "getField"
ldc "(Ljava/lang/String;)Ljava/lang/reflect/Field;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getField(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 11
33: ldc "java/lang/Class"
ldc "getDeclaredField"
ldc "(Ljava/lang/String;)Ljava/lang/reflect/Field;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getDeclaredField(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 12
34: ldc "java/lang/Class"
ldc "getMethod"
ldc "(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getMethod(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 13
35: ldc "java/lang/Class"
ldc "getConstructor"
ldc "([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getConstructor(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 14
36: ldc "java/lang/Class"
ldc "getDeclaredMethod"
ldc "(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getDeclaredMethod(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 15
37: ldc "java/lang/Class"
ldc "getDeclaredConstructor"
ldc "([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getConstructor(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 16
38: ldc "java/lang/Class"
ldc "getEnclosingMethod"
ldc "()Ljava/lang/reflect/Method;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getEnclosingMethod(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 17
39: ldc "java/lang/Class"
ldc "getEnclosingConstructor"
ldc "()Ljava/lang/reflect/Constructor;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getEnclosingMethod(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 18
40: ldc "java/lang/Class"
ldc "newInstance"
ldc "()Ljava/lang/Object;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.newInstance(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 19
41: ldc "java/lang/reflect/Array"
ldc "newInstance"
ldc "(Ljava/lang/Class;I)Ljava/lang/Object;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.newArrayInstance(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 20
42: ldc "java/lang/reflect/Array"
ldc "newInstance"
ldc "(Ljava/lang/Class;[I)Ljava/lang/Object;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.newArrayInstanceMulti(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 21
43: ldc "java/lang/ClassLoader"
ldc "getResource"
ldc "(Ljava/lang/String;)Ljava/net/URL;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getResource(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 22
44: ldc "java/lang/ClassLoader"
ldc "getResources"
ldc "(Ljava/lang/String;)Ljava/util/Enumeration;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getResources(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 23
45: ldc "java/lang/ClassLoader"
ldc "getSystemResource"
ldc "(Ljava/lang/String;)Ljava/net/URL;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getSystemResource(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 24
46: ldc "java/lang/ClassLoader"
ldc "getSystemResources"
ldc "(Ljava/lang/String;)Ljava/util/Enumeration;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getSystemResources(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 25
47: ldc "java/lang/reflect/Proxy"
ldc "getProxyClass"
ldc "(Ljava/lang/ClassLoader;[Ljava/lang/Class;)Ljava/lang/Class;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getProxyClass(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 26
48: ldc "java/lang/reflect/Proxy"
ldc "newProxyInstance"
49: ldc "(Ljava/lang/ClassLoader;[Ljava/lang/Class;Ljava/lang/reflect/InvocationHandler;)Ljava/lang/Object;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.newProxyInstance(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
50: invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 27
51: ldc "java/io/ObjectStreamClass"
ldc "<init>"
ldc "(Ljava/lang/Class;)V"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.objectStreamClassConstructor(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.brk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 28
52: ldc "java/util/ResourceBundle"
53: ldc "getBundleImpl"
54: ldc "(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/ClassLoader;Ljava/util/ResourceBundle$Control;)Ljava/util/ResourceBundle;"
55: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getBundleImplJDK8OrEarlier(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
56: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 29
57: ldc "java/util/ResourceBundle"
58: ldc "getBundleImpl"
59: ldc "(Ljava/lang/Module;Ljava/lang/Module;Ljava/lang/String;Ljava/util/Locale;Ljava/util/ResourceBundle$Control;)Ljava/util/ResourceBundle;"
60: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.getBundleImplJDK11OrLater(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
61: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 30
62: ldc "sun/misc/Unsafe"
ldc "objectFieldOffset"
ldc "(Ljava/lang/reflect/Field;)J"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.objectFieldOffset(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 31
63: ldc "jdk/internal/misc/Unsafe"
ldc "objectFieldOffset"
ldc "(Ljava/lang/reflect/Field;)J"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.objectFieldOffset(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 32
64: ldc "jdk/internal/misc/Unsafe"
ldc "objectFieldOffset"
ldc "(Ljava/lang/Class;Ljava/lang/String;)J"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.objectFieldOffsetByName(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 33
65: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "findStatic"
66: ldc "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;"
67: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.findMethodHandle(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
68: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 34
69: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "findVirtual"
70: ldc "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;"
71: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.findMethodHandle(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
72: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 35
73: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "findConstructor"
74: ldc "(Ljava/lang/Class;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;"
75: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.findConstructorHandle(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
76: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 36
77: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "findSpecial"
78: ldc "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;"
79: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.findSpecialHandle(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
80: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 37
81: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "bind"
82: ldc "(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;"
83: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.bindHandle(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
84: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 38
85: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "findGetter"
86: ldc "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;"
87: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.findFieldHandle(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
88: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 39
89: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "findSetter"
90: ldc "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;"
91: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.findFieldHandle(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
92: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 40
93: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "findStaticGetter"
94: ldc "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;"
95: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.findFieldHandle(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
96: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 41
97: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "findStaticSetter"
98: ldc "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle;"
99: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.findFieldHandle(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
100: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 42
101: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "findVarHandle"
102: ldc "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;"
103: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.findFieldHandle(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
104: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 43
105: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "findStaticVarHandle"
106: ldc "(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;"
107: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.findFieldHandle(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
108: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 44
109: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "findClass"
110: ldc "(Ljava/lang/String;)Ljava/lang/Class;"
111: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.findClass(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
112: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 45
113: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "unreflectGetter"
114: ldc "(Ljava/lang/reflect/Field;)Ljava/lang/invoke/MethodHandle;"
115: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.unreflectField(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
116: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 46
117: ldc "java/lang/invoke/MethodHandles$Lookup"
ldc "unreflectSetter"
118: ldc "(Ljava/lang/reflect/Field;)Ljava/lang/invoke/MethodHandle;"
119: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.unreflectField(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
120: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 47
121: ldc "java/lang/invoke/MethodHandleProxies"
ldc "asInterfaceInstance"
122: ldc "(Ljava/lang/Class;Ljava/lang/invoke/MethodHandle;)Ljava/lang/Object;"
123: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.asInterfaceInstance(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
124: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
dup
bipush 48
125: ldc "java/lang/invoke/ConstantBootstraps"
ldc "getStaticFinal"
126: ldc "(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/Object;"
127: invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.constantBootstrapGetStaticFinal(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
128: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
aastore
129: putstatic com.oracle.svm.agent.BreakpointInterceptor.BREAKPOINT_SPECIFICATIONS:[Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
130: ldc "java/lang/ClassLoader"
ldc "loadClass"
131: ldc "(Ljava/lang/String;)Ljava/lang/Class;"
invokedynamic dispatch()Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
com/oracle/svm/agent/BreakpointInterceptor.loadClass(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z (6)
(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
132: invokestatic com.oracle.svm.agent.BreakpointInterceptor.optionalBrk:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
putstatic com.oracle.svm.agent.BreakpointInterceptor.CLASSLOADER_LOAD_CLASS_BREAKPOINT_SPECIFICATION:Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
133: iconst_1
anewarray com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification
dup
iconst_0
134: getstatic com.oracle.svm.agent.BreakpointInterceptor.NATIVE_OBJECTFIELDOFFSET_BREAKPOINT_SPEC:Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;
aastore
135: putstatic com.oracle.svm.agent.BreakpointInterceptor.NATIVE_BREAKPOINT_SPECIFICATIONS:[Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;
136: return
LocalVariableTable:
Start End Slot Name Signature
private static void traceBreakpoint(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle, java.lang.String, java.lang.Object, java.lang.Object[]);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=9, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: getstatic com.oracle.svm.agent.BreakpointInterceptor.traceWriter:Lcom/oracle/svm/agent/TraceWriter;
ifnull 12
1: getstatic com.oracle.svm.agent.BreakpointInterceptor.traceWriter:Lcom/oracle/svm/agent/TraceWriter;
ldc "reflect"
2: aload 4
3: aload 0
aload 1
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;
4: aload 0
aload 2
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: aload 0
aload 3
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: aload 5
7: aload 6
8: 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
9: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.testException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 10
iconst_0
goto 11
StackMap locals:
StackMap stack:
10: iconst_1
StackMap locals:
StackMap stack: int
11: invokestatic com.oracle.svm.core.util.VMError.guarantee:(Z)V
12: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 env Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 13 1 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 13 2 declaringClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 13 3 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 13 4 function Ljava/lang/String;
0 13 5 result Ljava/lang/Object;
0 13 6 args [Ljava/lang/Object;
MethodParameters:
Name Flags
env
clazz
declaringClass
callerClass
function
result
args
private static boolean forName(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=10, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: aload 0
aload 3
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 4
start local 4 3: iconst_1
istore 5
start local 5 4: 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 6
start local 6 5: aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
getstatic com.oracle.svm.agent.BreakpointInterceptor.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.javaLangClassForName3:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
if_acmpne 10
6: invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetLocalObject:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetLocalFunctionPointer;
invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
iconst_0
iconst_2
aload 6
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetLocalFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;IILorg/graalvm/word/PointerBase;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiError.JVMTI_ERROR_NONE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
if_acmpne 7
iconst_1
goto 8
StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String int org.graalvm.nativeimage.c.type.WordPointer
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: istore 5
9: goto 15
10: StackMap locals:
StackMap stack:
aload 6
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface org.graalvm.nativeimage.c.type.WordPointer.write:(Lorg/graalvm/word/WordBase;)V
11: aload 2
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 15
12: invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetClassLoader:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetClassLoaderFunctionPointer;
invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
aload 2
aload 6
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetClassLoaderFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/word/PointerBase;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiError.JVMTI_ERROR_NONE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
if_acmpne 13
iconst_1
goto 14
StackMap locals:
StackMap stack:
13: iconst_0
StackMap locals:
StackMap stack: int
14: istore 5
15: StackMap locals:
StackMap stack:
getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
astore 7
start local 7 16: iload 5
ifeq 22
17: iconst_0
istore 8
start local 8 18: aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
getstatic com.oracle.svm.agent.BreakpointInterceptor.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.javaLangClassForName3:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 3
iload 8
aload 6
invokeinterface org.graalvm.nativeimage.c.type.WordPointer.read:()Lorg/graalvm/word/WordBase;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
invokestatic com.oracle.svm.jvmtiagentbase.Support.callStaticObjectMethodLIL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;ILcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 9
start local 9 19: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 21
20: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 9
21: StackMap locals: java.lang.Object int com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 9
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;
astore 7
end local 9 end local 8 22: StackMap locals:
StackMap stack:
aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/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
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aload 7
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
23: iconst_1
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 24 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 24 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 24 3 name Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 24 4 className Ljava/lang/String;
4 24 5 classLoaderValid Z
5 24 6 classLoaderPtr Lorg/graalvm/nativeimage/c/type/WordPointer;
16 24 7 result Ljava/lang/Object;
18 22 8 initialize I
19 22 9 loadedClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
private static boolean getFields(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetFields:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean getDeclaredFields(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetFields:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean handleGetFields(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: aload 0
aload 3
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 2
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aconst_null
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
3: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 4 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 4 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 4 3 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
private static boolean getMethods(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetMethods:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean getDeclaredMethods(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetMethods:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean getConstructors(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetMethods:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean getDeclaredConstructors(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetMethods:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean handleGetMethods(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: aload 0
aload 3
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 2
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aconst_null
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
3: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 4 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 4 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 4 3 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
private static boolean getClasses(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetClasses:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean getDeclaredClasses(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetClasses:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean handleGetClasses(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: aload 0
aload 3
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 2
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aconst_null
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
3: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 4 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 4 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 4 3 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
private static boolean getField(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetField:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean getDeclaredField(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetField:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean handleGetField(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint, boolean);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=11, locals=8, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 3: aload 0
aload 4
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 5
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 4: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 6
5: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 6
6: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint int com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle 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 7
start local 7 7: iload 2
ifne 11
aload 6
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
ifeq 11
8: aload 0
aload 6
getstatic com.oracle.svm.agent.BreakpointInterceptor.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 7
9: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 11
10: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 7
11: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 4
aload 7
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aload 6
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aload 5
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
12: iconst_1
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 13 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
0 13 2 declaredOnly Z
1 13 3 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 13 4 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 13 5 name Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 13 6 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
7 13 7 declaring Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
declaredOnly
static long nativeObjectFieldOffset(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)J
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=11, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.svm.agent.BreakpointInterceptor.NATIVE_OBJECTFIELDOFFSET_BREAKPOINT_SPEC:Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.installed:Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpoint;
ifnull 2
1: getstatic com.oracle.svm.agent.BreakpointInterceptor.NATIVE_OBJECTFIELDOFFSET_BREAKPOINT_SPEC:Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.installed:Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpoint;
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint.replacedFunction:Lorg/graalvm/nativeimage/c/function/CodePointer;
invokeinterface org.graalvm.nativeimage.c.function.CodePointer.isNonNull:()Z
ifeq 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ldc "incompletely installed"
4: invokestatic com.oracle.svm.core.util.VMError.guarantee:(ZLjava/lang/String;)V
5: getstatic com.oracle.svm.agent.BreakpointInterceptor.NATIVE_OBJECTFIELDOFFSET_BREAKPOINT_SPEC:Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.installed:Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpoint;
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint.replacedFunction:Lorg/graalvm/nativeimage/c/function/CodePointer;
checkcast com.oracle.svm.agent.BreakpointInterceptor$ObjectFieldOffsetFunctionPointer
astore 3
start local 3 6: aload 3
aload 0
aload 1
aload 2
invokeinterface com.oracle.svm.agent.BreakpointInterceptor$ObjectFieldOffsetFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)J
lstore 4
start local 4 7: invokestatic com.oracle.svm.jvmtiagentbase.Support.isInitialized:()Z
ifne 9
8: lload 4
lreturn
9: StackMap locals: com.oracle.svm.agent.BreakpointInterceptor$ObjectFieldOffsetFunctionPointer long
StackMap stack:
aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 10
iconst_0
goto 11
StackMap locals:
StackMap stack:
10: iconst_1
StackMap locals:
StackMap stack: int
11: istore 6
start local 6 12: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getCallerMethod:(I)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 7
start local 7 13: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 8
start local 8 14: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 9
start local 9 15: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 10
start local 10 16: aload 2
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 23
17: aload 0
aload 2
getstatic com.oracle.svm.agent.BreakpointInterceptor.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.javaLangReflectMemberGetName: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 9
18: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 20
19: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 9
20: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.agent.BreakpointInterceptor$ObjectFieldOffsetFunctionPointer long int com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 2
getstatic com.oracle.svm.agent.BreakpointInterceptor.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 10
21: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 23
22: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 10
23: StackMap locals:
StackMap stack:
aload 0
iload 6
aload 9
aload 10
aload 7
aload 8
invokestatic com.oracle.svm.agent.BreakpointInterceptor.verifyAndTraceObjectFieldOffset:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;ZLcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
ifne 25
24: ldc -9223372036854775808
lreturn
25: StackMap locals:
StackMap stack:
iload 6
ifne 27
26: aload 3
aload 0
aload 1
aload 2
invokeinterface com.oracle.svm.agent.BreakpointInterceptor$ObjectFieldOffsetFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)J
lreturn
27: StackMap locals:
StackMap stack:
lload 4
lreturn
end local 10 end local 9 end local 8 end local 7 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 28 1 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 28 2 field Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
6 28 3 original Lcom/oracle/svm/agent/BreakpointInterceptor$ObjectFieldOffsetFunctionPointer;
7 28 4 result J
12 28 6 validResult Z
13 28 7 currentMethod Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
14 28 8 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
15 28 9 name Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
16 28 10 declaring Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
MethodParameters:
Name Flags
jni
self
field
private static boolean objectFieldOffset(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=8, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: aload 0
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.callLongMethodL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)J
pop2
4: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 5
iconst_0
goto 6
StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
5: iconst_1
StackMap locals:
StackMap stack: int
6: istore 5
start local 5 7: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 6
start local 6 8: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 7
start local 7 9: aload 4
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 16
10: aload 0
aload 4
getstatic com.oracle.svm.agent.BreakpointInterceptor.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.javaLangReflectMemberGetName: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 6
11: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 13
12: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 6
13: StackMap locals: int com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 4
getstatic com.oracle.svm.agent.BreakpointInterceptor.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 7
14: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 16
15: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 7
16: StackMap locals:
StackMap stack:
aload 0
iload 5
aload 6
aload 7
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 2
invokestatic com.oracle.svm.agent.BreakpointInterceptor.verifyAndTraceObjectFieldOffset:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;ZLcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 17 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 17 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 17 3 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 17 4 field Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
7 17 5 validResult Z
8 17 6 name Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
9 17 7 declaring Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
private static boolean verifyAndTraceObjectFieldOffset(com.oracle.svm.jni.nativeapi.JNIEnvironment, boolean, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIMethodId, com.oracle.svm.jni.nativeapi.JNIObjectHandle);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;ZLcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=11, locals=7, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.getMethodDeclaringClass:(Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 1: aload 0
aload 6
aload 3
aload 5
ldc "objectFieldOffset"
iload 1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aload 2
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
2: iconst_1
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 3 1 validResult Z
0 3 2 name Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 3 3 declaring Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 3 4 currentMethod Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
0 3 5 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
1 3 6 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
validResult
name
declaring
currentMethod
callerClass
private static boolean objectFieldOffsetByName(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: aload 0
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 4
aload 5
invokestatic com.oracle.svm.jvmtiagentbase.Support.callLongMethodLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)J
pop2
5: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 6
iconst_0
goto 7
StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
6: iconst_1
StackMap locals:
StackMap stack: int
7: istore 6
start local 6 8: aload 0
iload 6
aload 5
aload 4
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 2
invokestatic com.oracle.svm.agent.BreakpointInterceptor.verifyAndTraceObjectFieldOffset:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;ZLcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 9 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 9 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 9 3 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 9 4 declaring Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 9 5 name Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
8 9 6 validResult Z
MethodParameters:
Name Flags
jni
bp
private static boolean getConstructor(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=7, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: aload 0
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 6
5: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 5
6: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 4
invokestatic com.oracle.svm.agent.BreakpointInterceptor.getClassArrayNames:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/Object;
astore 6
start local 6 7: aload 0
aload 3
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 2
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
aload 5
invokeinterface org.graalvm.word.SignedWord.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
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
8: iconst_1
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 9 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 9 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 9 3 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 9 4 paramTypesHandle Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 9 5 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
7 9 6 paramTypes Ljava/lang/Object;
MethodParameters:
Name Flags
jni
bp
private static boolean getMethod(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetMethod:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean getDeclaredMethod(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetMethod:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean handleGetMethod(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint, boolean);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=11, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 3: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 4: aload 0
aload 4
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 5
aload 6
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 7
start local 7 5: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 7
6: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 7
7: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint int com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle 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 8
start local 8 8: iload 2
ifne 12
aload 7
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 12
9: aload 0
aload 7
getstatic com.oracle.svm.agent.BreakpointInterceptor.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 8
10: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 12
11: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 8
12: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 5
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 9
start local 9 13: aload 0
aload 6
invokestatic com.oracle.svm.agent.BreakpointInterceptor.getClassArrayNames:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/Object;
astore 10
start local 10 14: aload 0
aload 4
aload 8
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aload 7
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 9
aastore
dup
iconst_1
aload 10
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
15: iconst_1
ireturn
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 16 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
0 16 2 declaredOnly Z
1 16 3 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 16 4 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 16 5 nameHandle Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 16 6 paramTypesHandle Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
5 16 7 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
8 16 8 declaring Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
13 16 9 name Ljava/lang/String;
14 16 10 paramTypes Ljava/lang/Object;
MethodParameters:
Name Flags
jni
bp
declaredOnly
private static boolean getEnclosingMethod(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=13, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: getstatic com.oracle.svm.agent.TraceWriter.EXPLICIT_NULL:Ljava/lang/String;
astore 4
start local 4 3: aload 0
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method: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 5
start local 5 4: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifne 20
aload 5
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 20
5: getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
astore 4
6: 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
aload 5
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 8
start local 8 7: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifne 20
aload 8
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNonNull:()Z
ifeq 20
8: 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 9
start local 9 9: invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetMethodDeclaringClass:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetMethodDeclaringClassFunctionPointer;
invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
aload 8
aload 9
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetMethodDeclaringClassFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lorg/graalvm/nativeimage/c/type/WordPointer;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiError.JVMTI_ERROR_NONE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
if_acmpne 20
10: aload 0
aload 9
invokeinterface org.graalvm.nativeimage.c.type.WordPointer.read:()Lorg/graalvm/word/WordBase;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
invokestatic com.oracle.svm.jvmtiagentbase.Support.getClassNameOrNull:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 10
start local 10 11: aload 10
ifnull 20
12: 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 11
start local 11 13: 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 12
start local 12 14: 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 8
aload 11
aload 12
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 20
15: aload 11
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
start local 6 16: aload 12
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
start local 7 17: new java.lang.StringBuilder
dup
aload 10
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
18: 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 11
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
19: 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 12
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 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 20: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.Object com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
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
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aload 5
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 21
aload 4
goto 22
StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.Object com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String
21: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.Object com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String java.lang.Object
22: iconst_0
anewarray java.lang.Object
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
23: iconst_1
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 24 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 24 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 24 3 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 24 4 result Ljava/lang/Object;
4 24 5 enclosing Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
16 20 6 name Ljava/lang/String;
17 20 7 signature Ljava/lang/String;
7 20 8 enclosingID Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
9 20 9 holderPtr Lorg/graalvm/nativeimage/c/type/WordPointer;
11 20 10 holderName Ljava/lang/String;
13 20 11 namePtr Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
14 20 12 signaturePtr Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
MethodParameters:
Name Flags
jni
bp
private static boolean newInstance(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=11, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: invokestatic org.graalvm.word.WordFactory.nullPointer:()Lorg/graalvm/word/PointerBase;
checkcast com.oracle.svm.jni.nativeapi.JNIMethodId
astore 3
start local 3 2: ldc "<init>"
astore 4
start local 4 3: ldc "()V"
astore 5
start local 5 4: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 5: aload 6
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
ifeq 23
6: aconst_null
astore 7
aconst_null
astore 8
7: aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 9
start local 9 8: aload 5
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 10
start local 10 9: 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
aload 6
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
aload 10
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetMethodIDFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;Lorg/graalvm/nativeimage/c/type/CCharPointer;)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 3
10: aload 10
ifnull 13
aload 10
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
goto 13
StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIMethodId java.lang.String java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack: java.lang.Throwable
11: astore 7
aload 10
ifnull 12
aload 10
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 10 StackMap locals:
StackMap stack:
12: aload 7
athrow
StackMap locals:
StackMap stack:
13: aload 9
ifnull 21
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
goto 21
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 8
aload 7
ifnonnull 15
aload 8
astore 7
goto 16
StackMap locals:
StackMap stack:
15: aload 7
aload 8
if_acmpeq 16
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
16: aload 9
ifnull 17
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 9 StackMap locals:
StackMap stack:
17: aload 7
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
18: astore 8
aload 7
ifnonnull 19
aload 8
astore 7
goto 20
StackMap locals:
StackMap stack:
19: aload 7
aload 8
if_acmpeq 20
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
20: aload 7
athrow
21: StackMap locals:
StackMap stack:
aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 23
22: invokestatic org.graalvm.word.WordFactory.nullPointer:()Lorg/graalvm/word/PointerBase;
checkcast com.oracle.svm.jni.nativeapi.JNIMethodId
astore 3
23: StackMap locals:
StackMap stack:
aload 0
aload 6
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 2
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aload 3
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.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.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
24: iconst_1
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 25 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 25 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 25 3 result Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
3 25 4 name Ljava/lang/String;
4 25 5 signature Ljava/lang/String;
5 25 6 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
8 17 9 ctorName Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
9 12 10 ctorSignature Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
Exception table:
from to target type
9 10 11 any
8 13 14 any
7 18 18 any
MethodParameters:
Name Flags
jni
bp
private static boolean newArrayInstance(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=6, args_size=2
start local 0 start local 1 0: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: ldc Lorg/graalvm/nativeimage/c/type/CIntPointer;
invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
checkcast org.graalvm.nativeimage.c.type.CIntPointer
astore 3
start local 3 2: invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetLocalInt:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetLocalFunctionPointer;
invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
iconst_0
iconst_1
aload 3
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetLocalFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;IILorg/graalvm/word/PointerBase;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiError.JVMTI_ERROR_NONE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
if_acmpne 3
iconst_1
goto 4
StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle org.graalvm.nativeimage.c.type.CIntPointer
StackMap stack:
3: iconst_0
StackMap locals:
StackMap stack: int
4: istore 4
start local 4 5: iconst_2
ldc Lcom/oracle/svm/jni/nativeapi/JNIValue;
invokestatic org.graalvm.nativeimage.StackValue.get:(ILjava/lang/Class;)Lorg/graalvm/word/PointerBase;
checkcast com.oracle.svm.jni.nativeapi.JNIValue
astore 5
start local 5 6: aload 5
iconst_0
invokeinterface com.oracle.svm.jni.nativeapi.JNIValue.addressOf:(I)Lcom/oracle/svm/jni/nativeapi/JNIValue;
aload 2
invokeinterface com.oracle.svm.jni.nativeapi.JNIValue.setObject:(Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)V
7: aload 5
iconst_1
invokeinterface com.oracle.svm.jni.nativeapi.JNIValue.addressOf:(I)Lcom/oracle/svm/jni/nativeapi/JNIValue;
aload 3
invokeinterface org.graalvm.nativeimage.c.type.CIntPointer.read:()I
invokeinterface com.oracle.svm.jni.nativeapi.JNIValue.setInt:(I)V
8: aload 0
aload 1
aload 5
iload 4
invokestatic com.oracle.svm.agent.BreakpointInterceptor.newArrayInstance0:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Lcom/oracle/svm/jni/nativeapi/JNIValue;Z)Z
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 9 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 9 2 componentClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 9 3 lengthPtr Lorg/graalvm/nativeimage/c/type/CIntPointer;
5 9 4 lengthValid Z
6 9 5 args Lcom/oracle/svm/jni/nativeapi/JNIValue;
MethodParameters:
Name Flags
jni
bp
private static boolean newArrayInstanceMulti(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_2
ldc Lcom/oracle/svm/jni/nativeapi/JNIValue;
invokestatic org.graalvm.nativeimage.StackValue.get:(ILjava/lang/Class;)Lorg/graalvm/word/PointerBase;
checkcast com.oracle.svm.jni.nativeapi.JNIValue
astore 4
start local 4 3: aload 4
iconst_0
invokeinterface com.oracle.svm.jni.nativeapi.JNIValue.addressOf:(I)Lcom/oracle/svm/jni/nativeapi/JNIValue;
aload 2
invokeinterface com.oracle.svm.jni.nativeapi.JNIValue.setObject:(Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)V
4: aload 4
iconst_1
invokeinterface com.oracle.svm.jni.nativeapi.JNIValue.addressOf:(I)Lcom/oracle/svm/jni/nativeapi/JNIValue;
aload 3
invokeinterface com.oracle.svm.jni.nativeapi.JNIValue.setObject:(Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)V
5: aload 0
aload 1
aload 4
aload 3
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.newArrayInstance0:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Lcom/oracle/svm/jni/nativeapi/JNIValue;Z)Z
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 6 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 6 2 componentClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 6 3 dimensionsArray Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 6 4 args Lcom/oracle/svm/jni/nativeapi/JNIValue;
MethodParameters:
Name Flags
jni
bp
private static boolean newArrayInstance0(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint, com.oracle.svm.jni.nativeapi.JNIValue, boolean);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Lcom/oracle/svm/jni/nativeapi/JNIValue;Z)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 1: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 5
start local 5 2: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 6
start local 6 3: aload 2
iconst_0
invokeinterface com.oracle.svm.jni.nativeapi.JNIValue.addressOf:(I)Lcom/oracle/svm/jni/nativeapi/JNIValue;
invokeinterface com.oracle.svm.jni.nativeapi.JNIValue.getObject:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 7
start local 7 4: aload 7
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 12
iload 3
ifeq 12
5: invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getCallStaticObjectMethodA:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$CallStaticObjectMethodAFunctionPointer;
aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 2
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$CallStaticObjectMethodAFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIValue;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
6: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 9
7: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 5
8: goto 12
9: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIValue int com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
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
aload 5
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
10: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 12
11: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 6
12: StackMap locals:
StackMap stack:
aload 0
aload 6
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;
astore 8
start local 8 13: aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 4
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aload 5
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 8
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
14: iconst_1
ireturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 15 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
0 15 2 args Lcom/oracle/svm/jni/nativeapi/JNIValue;
0 15 3 argsValid Z
1 15 4 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 15 5 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 15 6 resultClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 15 7 componentClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
13 15 8 resultClassName Ljava/lang/String;
MethodParameters:
Name Flags
jni
bp
args
argsValid
private static boolean getResource(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetResources:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean getResources(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetResources:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean handleGetResources(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint, boolean);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=11, locals=9, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 3: aload 0
aload 4
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 5
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 7
start local 7 4: aload 7
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
istore 6
start local 6 5: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 7
6: iconst_0
istore 6
7: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint int com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle int com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
iload 6
ifeq 9
iload 2
ifeq 9
8: aload 0
aload 7
invokestatic com.oracle.svm.agent.BreakpointInterceptor.hasEnumerationElements:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
istore 6
9: StackMap locals:
StackMap stack:
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 8
start local 8 10: aload 4
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 14
11: 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
aload 4
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 8
12: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 14
13: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 8
14: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 8
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
iload 6
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aload 5
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
15: iconst_1
ireturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 16 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
0 16 2 returnsEnumeration Z
1 16 3 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 16 4 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 16 5 name Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
5 16 6 result Z
4 16 7 returnValue Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
10 16 8 selfClazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
returnsEnumeration
private static boolean hasEnumerationElements(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;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getstatic com.oracle.svm.agent.BreakpointInterceptor.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.javaUtilEnumerationHasMoreElements:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
invokestatic com.oracle.svm.jvmtiagentbase.Support.callBooleanMethod:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)Z
istore 2
start local 2 1: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 3
2: iconst_0
istore 2
3: StackMap locals: int
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 4 1 obj Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
1 4 2 hasElements Z
MethodParameters:
Name Flags
jni
obj
private static boolean getSystemResource(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetSystemResources:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean getSystemResources(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.handleGetSystemResources:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 1 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
bp
private static boolean handleGetSystemResources(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint, boolean);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;Z)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=11, locals=7, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 2: aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.callStaticObjectMethodL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 3: aload 5
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
istore 6
start local 6 4: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 6
5: iconst_0
istore 6
6: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint int com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle int
StackMap stack:
iload 6
ifeq 8
iload 2
ifeq 8
7: aload 0
aload 5
invokestatic com.oracle.svm.agent.BreakpointInterceptor.hasEnumerationElements:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
istore 6
8: StackMap locals:
StackMap stack:
aload 0
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 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
iload 6
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
9: iconst_1
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 10 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
0 10 2 returnsEnumeration Z
1 10 3 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 10 4 name Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 10 5 returnValue Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 10 6 result Z
MethodParameters:
Name Flags
jni
bp
returnsEnumeration
private static boolean newProxyInstance(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=8, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: aload 0
aload 4
invokestatic com.oracle.svm.agent.BreakpointInterceptor.getClassArrayNames:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/Object;
astore 5
start local 5 4: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 5: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 3
aload 4
aload 6
invokestatic com.oracle.svm.jvmtiagentbase.Support.callStaticObjectMethodLLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
invokeinterface org.graalvm.word.SignedWord.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
istore 7
start local 7 6: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 8
7: iconst_0
istore 7
8: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.Object com.oracle.svm.jni.nativeapi.JNIObjectHandle int
StackMap stack:
aload 0
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
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
iload 7
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_3
anewarray java.lang.Object
dup
iconst_0
getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
aastore
dup
iconst_1
aload 5
aastore
dup
iconst_2
getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
9: iconst_1
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 10 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 10 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 10 3 classLoader Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 10 4 ifaces Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 10 5 ifaceNames Ljava/lang/Object;
5 10 6 invokeHandler Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
6 10 7 result Z
MethodParameters:
Name Flags
jni
bp
private static boolean getProxyClass(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=7, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: aload 0
aload 4
invokestatic com.oracle.svm.agent.BreakpointInterceptor.getClassArrayNames:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/Object;
astore 5
start local 5 4: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 3
aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.callStaticObjectMethodLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
invokeinterface org.graalvm.word.SignedWord.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
istore 6
start local 6 5: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 7
6: iconst_0
istore 6
7: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.Object int
StackMap stack:
aload 0
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
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
iload 6
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_2
anewarray java.lang.Object
dup
iconst_0
getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
aastore
dup
iconst_1
aload 5
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
8: iconst_1
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 9 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 9 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 9 3 classLoader Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 9 4 ifaces Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 9 5 ifaceNames Ljava/lang/Object;
5 9 6 result Z
MethodParameters:
Name Flags
jni
bp
private static java.lang.Object getClassArrayNames(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;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: getstatic com.oracle.svm.agent.TraceWriter.EXPLICIT_NULL:Ljava/lang/String;
astore 2
start local 2 1: aload 1
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 16
2: getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
astore 2
3: invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetArrayLength:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetArrayLengthFunctionPointer;
aload 0
aload 1
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetArrayLengthFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)I
istore 3
start local 3 4: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifne 16
iload 3
iflt 16
5: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 6: iconst_0
istore 5
start local 5 7: goto 14
8: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.Object int java.util.List int
StackMap stack:
invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetObjectArrayElement:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetObjectArrayElementFunctionPointer;
aload 0
aload 1
iload 5
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetObjectArrayElementFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 9: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifne 12
10: aload 4
aload 0
aload 6
getstatic com.oracle.svm.agent.TraceWriter.EXPLICIT_NULL:Ljava/lang/String;
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;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
11: goto 13
12: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 4
getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 6 13: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
14: iload 5
iload 3
if_icmplt 8
end local 5 15: aload 4
iconst_0
anewarray java.lang.String
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
astore 2
end local 4 end local 3 16: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 17 1 classArray Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
1 17 2 classNames Ljava/lang/Object;
4 16 3 length I
6 16 4 list Ljava/util/List<Ljava/lang/String;>;
7 15 5 i I
9 13 6 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
classArray
private static boolean getBundleImplJDK8OrEarlier(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=11, locals=8, args_size=2
start local 0 start local 1 0: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getCallerClass:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: iconst_3
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 5: aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 3
aload 4
aload 5
aload 6
invokestatic com.oracle.svm.jvmtiagentbase.Support.callStaticObjectMethodLLLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 7
start local 7 6: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 8
7: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 7
8: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
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
ldc "getBundleImplJDK8OrEarlier"
aload 7
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_4
anewarray java.lang.Object
dup
iconst_0
9: aload 0
aload 3
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
aastore
dup
iconst_1
getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
aastore
dup
iconst_2
getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
aastore
dup
iconst_3
getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
aastore
10: invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
11: iconst_1
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 12 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 12 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 12 3 baseName Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 12 4 locale Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 12 5 loader Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
5 12 6 control Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
6 12 7 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
private static boolean getBundleImplJDK11OrLater(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=11, locals=11, args_size=2
start local 0 start local 1 0: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getCallerMethod:(I)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 2
start local 2 1: aload 2
getstatic com.oracle.svm.agent.BreakpointInterceptor.agent:Lcom/oracle/svm/agent/NativeImageAgent;
invokevirtual com.oracle.svm.agent.NativeImageAgent.handles:()Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
checkcast com.oracle.svm.agent.NativeImageAgentJNIHandleSet
aload 0
invokevirtual com.oracle.svm.agent.NativeImageAgentJNIHandleSet.tryGetJavaUtilResourceBundleGetBundleImplSLCC:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.equal:(Lorg/graalvm/word/ComparableWord;)Z
ifeq 4
2: iconst_4
invokestatic com.oracle.svm.jvmtiagentbase.Support.getCallerMethod:(I)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 3
start local 3 3: goto 5
end local 3 4: StackMap locals: com.oracle.svm.jni.nativeapi.JNIMethodId
StackMap stack:
iconst_3
invokestatic com.oracle.svm.jvmtiagentbase.Support.getCallerMethod:(I)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 3
start local 3 5: StackMap locals: com.oracle.svm.jni.nativeapi.JNIMethodId
StackMap stack:
aload 3
invokestatic com.oracle.svm.jvmtiagentbase.Support.getMethodDeclaringClass:(Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 6: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 7: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 8: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 7
start local 7 9: iconst_3
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 8
start local 8 10: iconst_4
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 9
start local 9 11: aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 5
aload 6
aload 7
aload 8
aload 9
invokestatic com.oracle.svm.jvmtiagentbase.Support.callStaticObjectMethodLLLLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 10
start local 10 12: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 14
13: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 10
14: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
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 4
ldc "getBundleImplJDK11OrLater"
aload 10
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_5
anewarray java.lang.Object
dup
iconst_0
15: getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
aastore
dup
iconst_1
getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
aastore
dup
iconst_2
aload 0
aload 7
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
aastore
dup
iconst_3
getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
aastore
dup
iconst_4
getstatic com.oracle.svm.agent.TraceWriter.UNKNOWN_VALUE:Ljava/lang/String;
aastore
16: invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
17: iconst_1
ireturn
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 18 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 18 2 intermediateMethod Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
3 4 3 callerMethod Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
5 18 3 callerMethod Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
6 18 4 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
7 18 5 callerModule Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
8 18 6 module Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
9 18 7 baseName Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
10 18 8 locale Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
11 18 9 control Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
12 18 10 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
private static boolean loadClass(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=9, args_size=2
start local 0 start local 1 0: getstatic com.oracle.svm.agent.BreakpointInterceptor.$assertionsDisabled:Z
ifne 1
getstatic com.oracle.svm.agent.BreakpointInterceptor.experimentalClassLoaderSupport:Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 2
start local 2 2: ldc Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiFrameInfo;
invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
checkcast com.oracle.svm.jvmtiagentbase.jvmti.JvmtiFrameInfo
astore 3
start local 3 3: ldc Lorg/graalvm/nativeimage/c/type/CIntPointer;
invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
checkcast org.graalvm.nativeimage.c.type.CIntPointer
astore 4
start local 4 4: invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetStackTrace:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetStackTraceFunctionPointer;
invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
iconst_1
iconst_1
aload 3
checkcast org.graalvm.nativeimage.c.type.WordPointer
aload 4
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetStackTraceFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;IILorg/graalvm/nativeimage/c/type/WordPointer;Lorg/graalvm/nativeimage/c/type/CIntPointer;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiError.JVMTI_ERROR_NONE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
if_acmpne 13
aload 4
invokeinterface org.graalvm.nativeimage.c.type.CIntPointer.read:()I
iconst_1
if_icmpne 13
5: aload 3
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiFrameInfo.getMethod:()Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
invokestatic com.oracle.svm.jvmtiagentbase.Support.getMethodDeclaringClass:(Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
6: aload 2
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 8
invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getIsAssignableFrom:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$IsAssignableFromFunctionPointer;
aload 0
aload 2
getstatic com.oracle.svm.agent.BreakpointInterceptor.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.javaLangClassLoader:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$IsAssignableFromFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
ifeq 8
7: iconst_1
ireturn
8: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jvmtiagentbase.jvmti.JvmtiFrameInfo org.graalvm.nativeimage.c.type.CIntPointer
StackMap stack:
new com.oracle.svm.agent.BreakpointInterceptor$MethodLocation
dup
aload 3
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiFrameInfo.getMethod:()Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 3
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiFrameInfo.getLocation:()J
invokestatic org.graalvm.compiler.core.common.NumUtil.safeToInt:(J)I
invokespecial com.oracle.svm.agent.BreakpointInterceptor$MethodLocation.<init>:(Lcom/oracle/svm/jni/nativeapi/JNIMethodId;I)V
astore 5
start local 5 9: getstatic com.oracle.svm.agent.BreakpointInterceptor.observedExplicitLoadClassCallSites:Ljava/util/concurrent/ConcurrentMap;
aload 5
invokeinterface java.util.concurrent.ConcurrentMap.containsKey:(Ljava/lang/Object;)Z
ifne 13
10: aload 2
aload 5
getfield com.oracle.svm.agent.BreakpointInterceptor$MethodLocation.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 5
getfield com.oracle.svm.agent.BreakpointInterceptor$MethodLocation.bci:I
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.signature:Ljava/lang/String;
invokestatic com.oracle.svm.agent.BreakpointInterceptor.isLoadClassInvocation:(Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;ILjava/lang/String;Ljava/lang/String;)Z
ifne 12
11: iconst_1
ireturn
12: StackMap locals: com.oracle.svm.agent.BreakpointInterceptor$MethodLocation
StackMap stack:
getstatic com.oracle.svm.agent.BreakpointInterceptor.observedExplicitLoadClassCallSites:Ljava/util/concurrent/ConcurrentMap;
aload 5
getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
invokeinterface java.util.concurrent.ConcurrentMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 5 13: StackMap locals:
StackMap stack:
iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 14: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 15: aload 0
aload 6
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 7
start local 7 16: aload 0
aload 5
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 6
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 8
start local 8 17: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 19
18: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 8
19: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jvmtiagentbase.jvmti.JvmtiFrameInfo org.graalvm.nativeimage.c.type.CIntPointer com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/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
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aload 8
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 7
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
20: iconst_1
ireturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 21 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
2 21 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 21 3 frameInfo Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiFrameInfo;
4 21 4 frameCountPtr Lorg/graalvm/nativeimage/c/type/CIntPointer;
9 13 5 location Lcom/oracle/svm/agent/BreakpointInterceptor$MethodLocation;
14 21 5 self Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
15 21 6 name Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
16 21 7 className Ljava/lang/String;
17 21 8 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
private static boolean isLoadClassInvocation(com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIMethodId, int, java.lang.String, java.lang.String);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;ILjava/lang/String;Ljava/lang/String;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=17, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: ldc Lorg/graalvm/nativeimage/c/type/CIntPointer;
invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
checkcast org.graalvm.nativeimage.c.type.CIntPointer
astore 5
start local 5 1: 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 6
start local 6 2: invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetBytecodes:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetBytecodesFunctionPointer;
invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
aload 1
aload 5
aload 6
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetBytecodesFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lorg/graalvm/nativeimage/c/type/CIntPointer;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_acmpeq 4
3: iconst_0
ireturn
4: StackMap locals: org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CCharPointerPointer
StackMap stack:
aload 6
invokeinterface org.graalvm.nativeimage.c.type.CCharPointerPointer.read:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
astore 8
start local 8 5: iload 2
iconst_2
iadd
aload 5
invokeinterface org.graalvm.nativeimage.c.type.CIntPointer.read:()I
if_icmplt 8
6: 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
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
7: iconst_0
ireturn
8: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIMethodId int java.lang.String java.lang.String org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CCharPointerPointer top org.graalvm.nativeimage.c.type.CCharPointer
StackMap stack:
aload 8
iload 2
invokeinterface org.graalvm.nativeimage.c.type.CCharPointer.read:(I)B
invokestatic java.lang.Byte.toUnsignedInt:(B)I
istore 9
start local 9 9: iload 9
sipush 182
if_icmpeq 12
10: 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
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: iconst_0
ireturn
12: StackMap locals: int
StackMap stack:
aload 8
iload 2
iconst_1
iadd
invokeinterface org.graalvm.nativeimage.c.type.CCharPointer.read:(I)B
invokestatic java.lang.Byte.toUnsignedInt:(B)I
istore 10
start local 10 13: aload 8
iload 2
iconst_2
iadd
invokeinterface org.graalvm.nativeimage.c.type.CCharPointer.read:(I)B
invokestatic java.lang.Byte.toUnsignedInt:(B)I
istore 11
start local 11 14: iload 10
bipush 8
ishl
iload 11
ior
istore 7
end local 11 end local 10 end local 9 start local 7 15: goto 19
end local 7 StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIMethodId int java.lang.String java.lang.String org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CCharPointerPointer top org.graalvm.nativeimage.c.type.CCharPointer
StackMap stack: java.lang.Throwable
16: astore 12
17: 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
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
18: aload 12
athrow
start local 7 19: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIMethodId int java.lang.String java.lang.String org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CCharPointerPointer int org.graalvm.nativeimage.c.type.CCharPointer
StackMap stack:
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
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
20: ldc Lorg/graalvm/nativeimage/c/type/CIntPointer;
invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
checkcast org.graalvm.nativeimage.c.type.CIntPointer
astore 9
start local 9 21: ldc Lorg/graalvm/nativeimage/c/type/CIntPointer;
invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
checkcast org.graalvm.nativeimage.c.type.CIntPointer
astore 10
start local 10 22: 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 11
start local 11 23: invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetConstantPool:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetConstantPoolFunctionPointer;
invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
aload 0
aload 9
aload 10
aload 11
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetConstantPoolFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CIntPointer;Lorg/graalvm/nativeimage/c/type/CIntPointer;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_acmpeq 25
24: iconst_0
ireturn
25: StackMap locals: org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CCharPointerPointer
StackMap stack:
aload 11
invokeinterface org.graalvm.nativeimage.c.type.CCharPointerPointer.read:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
astore 12
start local 12 26: aload 12
aload 10
invokeinterface org.graalvm.nativeimage.c.type.CIntPointer.read:()I
invokestatic org.graalvm.nativeimage.c.type.CTypeConversion.asByteBuffer:(Lorg/graalvm/word/PointerBase;I)Ljava/nio/ByteBuffer;
astore 13
start local 13 27: aload 13
getstatic java.nio.ByteOrder.BIG_ENDIAN:Ljava/nio/ByteOrder;
invokevirtual java.nio.ByteBuffer.order:(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer;
pop
28: new com.oracle.svm.jvmtiagentbase.ConstantPoolTool
dup
aload 13
invokespecial com.oracle.svm.jvmtiagentbase.ConstantPoolTool.<init>:(Ljava/nio/ByteBuffer;)V
iload 7
invokevirtual com.oracle.svm.jvmtiagentbase.ConstantPoolTool.readMethodReference:(I)Lcom/oracle/svm/jvmtiagentbase/ConstantPoolTool$MethodReference;
astore 14
start local 14 29: aload 3
aload 14
getfield com.oracle.svm.jvmtiagentbase.ConstantPoolTool$MethodReference.name:Ljava/lang/CharSequence;
invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
ifeq 30
aload 4
aload 14
getfield com.oracle.svm.jvmtiagentbase.ConstantPoolTool$MethodReference.descriptor:Ljava/lang/CharSequence;
invokevirtual java.lang.String.contentEquals:(Ljava/lang/CharSequence;)Z
ifeq 30
iconst_1
goto 31
StackMap locals: org.graalvm.nativeimage.c.type.CCharPointer java.nio.ByteBuffer com.oracle.svm.jvmtiagentbase.ConstantPoolTool$MethodReference
StackMap stack:
30: iconst_0
StackMap locals:
StackMap stack: int
31: istore 16
32: 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 12
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
33: iload 16
ireturn
end local 14 34: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIMethodId int java.lang.String java.lang.String org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CCharPointerPointer int org.graalvm.nativeimage.c.type.CCharPointer org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CCharPointerPointer org.graalvm.nativeimage.c.type.CCharPointer java.nio.ByteBuffer
StackMap stack: com.oracle.svm.jvmtiagentbase.ConstantPoolTool$ConstantPoolException
pop
35: 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 12
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
36: iconst_0
ireturn
end local 13 37: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIMethodId int java.lang.String java.lang.String org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CCharPointerPointer int org.graalvm.nativeimage.c.type.CCharPointer org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.CCharPointerPointer org.graalvm.nativeimage.c.type.CCharPointer
StackMap stack: java.lang.Throwable
astore 15
38: 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 12
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
39: aload 15
athrow
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 40 1 method Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
0 40 2 bci I
0 40 3 methodName Ljava/lang/String;
0 40 4 signature Ljava/lang/String;
1 40 5 lengthPtr Lorg/graalvm/nativeimage/c/type/CIntPointer;
2 40 6 bytecodesPtr Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
15 16 7 cpi I
19 40 7 cpi I
5 40 8 bytecodes Lorg/graalvm/nativeimage/c/type/CCharPointer;
9 15 9 instruction I
13 15 10 indexbyte1 I
14 15 11 indexbyte2 I
21 40 9 constantPoolCountPtr Lorg/graalvm/nativeimage/c/type/CIntPointer;
22 40 10 constantPoolByteCountPtr Lorg/graalvm/nativeimage/c/type/CIntPointer;
23 40 11 constantPoolBytesPtr Lorg/graalvm/nativeimage/c/type/CCharPointerPointer;
26 40 12 constantPool Lorg/graalvm/nativeimage/c/type/CCharPointer;
27 37 13 buffer Ljava/nio/ByteBuffer;
29 34 14 ref Lcom/oracle/svm/jvmtiagentbase/ConstantPoolTool$MethodReference;
Exception table:
from to target type
5 6 16 any
8 10 16 any
12 16 16 any
28 32 34 Class com.oracle.svm.jvmtiagentbase.ConstantPoolTool$ConstantPoolException
26 32 37 any
34 35 37 any
MethodParameters:
Name Flags
clazz
method
bci
methodName
signature
private static boolean findMethodHandle(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=8, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: iconst_3
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 5: aload 0
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 4
aload 5
aload 6
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodLLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 7
start local 7 6: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 8
7: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 7
8: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 4
aload 2
aload 5
aload 0
aload 6
invokestatic com.oracle.svm.agent.BreakpointInterceptor.getParamTypes:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 7
invokestatic com.oracle.svm.agent.BreakpointInterceptor.methodMethodHandle:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 9 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 9 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 9 3 lookup Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 9 4 declaringClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 9 5 methodName Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
5 9 6 methodType Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
6 9 7 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
private static boolean findSpecialHandle(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=9, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: iconst_3
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 5: iconst_4
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 7
start local 7 6: aload 0
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 4
aload 5
aload 6
aload 7
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodLLLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 8
start local 8 7: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 9
8: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 8
9: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 4
aload 2
aload 5
aload 0
aload 6
invokestatic com.oracle.svm.agent.BreakpointInterceptor.getParamTypes:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 8
invokestatic com.oracle.svm.agent.BreakpointInterceptor.methodMethodHandle:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
ireturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 10 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 10 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 10 3 lookup Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 10 4 declaringClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 10 5 methodName Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
5 10 6 methodType Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
6 10 7 specialCaller Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
7 10 8 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
private static boolean bindHandle(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=9, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: iconst_3
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 5: aload 0
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 4
aload 5
aload 6
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodLLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 7
start local 7 6: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 8
7: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 7
8: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 4
getstatic com.oracle.svm.agent.BreakpointInterceptor.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.javaLangObjectGetClass: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 8
start local 8 9: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 11
10: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 8
11: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 8
aload 2
aload 5
aload 0
aload 6
invokestatic com.oracle.svm.agent.BreakpointInterceptor.getParamTypes:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 7
invokestatic com.oracle.svm.agent.BreakpointInterceptor.methodMethodHandle:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
ireturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 12 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 12 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 12 3 lookup Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 12 4 receiver Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 12 5 methodName Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
5 12 6 methodType Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
6 12 7 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
9 12 8 declaringClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
bp
private static boolean methodMethodHandle(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 3
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 6
start local 6 1: aload 0
aload 4
invokestatic com.oracle.svm.agent.BreakpointInterceptor.getClassArrayNames:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/Object;
astore 7
start local 7 2: aload 0
aload 1
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 2
ldc "findMethodHandle"
aload 5
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
aastore
dup
iconst_1
aload 7
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
3: iconst_1
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 4 1 declaringClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 4 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 4 3 nameHandle Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 4 4 paramTypesHandle Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 4 5 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
1 4 6 name Ljava/lang/String;
2 4 7 paramTypes Ljava/lang/Object;
MethodParameters:
Name Flags
jni
declaringClass
callerClass
nameHandle
paramTypesHandle
result
private static boolean findConstructorHandle(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=8, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: aload 0
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 4
aload 5
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 5: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 7
6: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 6
7: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 0
aload 5
invokestatic com.oracle.svm.agent.BreakpointInterceptor.getParamTypes:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
invokestatic com.oracle.svm.agent.BreakpointInterceptor.getClassArrayNames:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/Object;
astore 7
start local 7 8: aload 0
aload 4
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 2
ldc "findConstructorHandle"
aload 6
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 7
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
9: iconst_1
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 10 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 10 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 10 3 lookup Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 10 4 declaringClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 10 5 methodType Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
5 10 6 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
8 10 7 paramTypes Ljava/lang/Object;
MethodParameters:
Name Flags
jni
bp
private static com.oracle.svm.jni.nativeapi.JNIObjectHandle getParamTypes(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getstatic com.oracle.svm.agent.BreakpointInterceptor.agent:Lcom/oracle/svm/agent/NativeImageAgent;
invokevirtual com.oracle.svm.agent.NativeImageAgent.handles:()Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
checkcast com.oracle.svm.agent.NativeImageAgentJNIHandleSet
aload 0
invokevirtual com.oracle.svm.agent.NativeImageAgentJNIHandleSet.getJavaLangInvokeMethodTypeParameterArray:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)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 2
start local 2 1: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 3
2: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 2
3: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 4 1 methodType Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
1 4 2 paramTypesHandle Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
MethodParameters:
Name Flags
jni
methodType
private static boolean findFieldHandle(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=9, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: iconst_3
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 5: aload 0
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 4
aload 5
aload 6
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodLLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 7
start local 7 6: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 8
7: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 7
8: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 5
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 8
start local 8 9: aload 0
aload 4
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 2
ldc "findFieldHandle"
aload 7
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 8
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
10: iconst_1
ireturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 11 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 11 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 11 3 lookup Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 11 4 declaringClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 11 5 fieldName Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
5 11 6 fieldType Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
6 11 7 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
9 11 8 name Ljava/lang/String;
MethodParameters:
Name Flags
jni
bp
private static boolean findClass(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=7, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: aload 0
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 6
5: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 5
6: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 6
start local 6 7: aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/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
ldc "findClass"
aload 5
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
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
8: iconst_1
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 9 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 9 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 9 3 lookup Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 9 4 className Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 9 5 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
7 9 6 name Ljava/lang/String;
MethodParameters:
Name Flags
jni
bp
private static boolean unreflectField(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=9, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: aload 0
aload 3
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.callObjectMethodL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 6
5: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 5
6: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 4
getstatic com.oracle.svm.agent.BreakpointInterceptor.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 6
start local 6 7: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 9
8: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 6
9: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 4
getstatic com.oracle.svm.agent.BreakpointInterceptor.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.javaLangReflectMemberGetName: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 7
start local 7 10: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 12
11: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 7
12: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 7
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 8
start local 8 13: aload 0
aload 6
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 2
ldc "unreflectField"
aload 5
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 8
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
14: iconst_1
ireturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 15 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 15 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 15 3 lookup Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 15 4 field Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 15 5 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
7 15 6 declaringClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
10 15 7 fieldNameHandle Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
13 15 8 fieldName Ljava/lang/String;
MethodParameters:
Name Flags
jni
bp
private static boolean asInterfaceInstance(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=9, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 3
aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.callStaticObjectMethodLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 6
5: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 5
6: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 3
getstatic com.oracle.svm.agent.BreakpointInterceptor.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.javaLangClassGetName: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 6
start local 6 7: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 9
8: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 6
9: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 6
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 7
start local 7 10: aload 0
aload 3
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 2
ldc "asInterfaceInstance"
aload 5
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.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
11: iconst_1
anewarray java.lang.String
dup
iconst_0
aload 7
aastore
astore 8
start local 8 12: aload 0
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
ldc "newMethodHandleProxyInstance"
aload 5
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 8
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
13: iconst_1
ireturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 14 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 14 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 14 3 intfc Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 14 4 methodHandle Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 14 5 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
7 14 6 intfcNameHandle Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
10 14 7 intfcName Ljava/lang/String;
12 14 8 intfcNames [Ljava/lang/String;
MethodParameters:
Name Flags
jni
bp
private static boolean constantBootstrapGetStaticFinal(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=10, locals=9, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.getDirectCallerClass:()Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: iconst_0
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 2: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: iconst_2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 5
start local 5 4: iconst_3
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 6
start local 6 5: aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 3
aload 4
aload 5
aload 6
invokestatic com.oracle.svm.jvmtiagentbase.Support.callStaticObjectMethodLLLL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 7
start local 7 6: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 8
7: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 7
8: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 4
invokestatic com.oracle.svm.jvmtiagentbase.Support.fromJniString:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 8
start local 8 9: aload 0
aload 6
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
aload 2
ldc "findFieldHandle"
aload 7
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 8
aastore
invokestatic com.oracle.svm.agent.BreakpointInterceptor.traceBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/Object;[Ljava/lang/Object;)V
10: iconst_1
ireturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 11 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 11 2 callerClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 11 3 lookup Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
3 11 4 fieldName Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 11 5 type Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
5 11 6 declaringClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
6 11 7 result Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
9 11 8 name Ljava/lang/String;
MethodParameters:
Name Flags
jni
bp
private static boolean objectStreamClassConstructor(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=11, locals=23, args_size=2
start local 0 start local 1 0: iconst_1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectArgument:(I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 2
start local 2 1: aload 0
aload 2
invokestatic com.oracle.svm.jvmtiagentbase.Support.getClassNameOrNull:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 3
start local 3 2: aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.method:Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
aload 2
invokestatic com.oracle.svm.jvmtiagentbase.Support.newObjectL:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
start local 4 3: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
aload 4
invokeinterface org.graalvm.word.SignedWord.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
istore 5
start local 5 4: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 6
5: iconst_0
istore 5
6: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle int
StackMap stack:
aload 3
ldc "$$Lambda$"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 8
7: iconst_1
ireturn
8: StackMap locals:
StackMap stack:
aconst_null
astore 6
start local 6 9: aconst_null
astore 7
start local 7 10: getstatic com.oracle.svm.agent.BreakpointInterceptor.writeSerializationChecksums:Z
ifeq 18
11: ldc "0"
astore 6
12: iload 5
ifeq 18
13: new com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator
dup
aload 0
aload 1
invokespecial com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator.<init>:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)V
astore 7
14: aload 7
aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 4
invokestatic com.oracle.svm.agent.BreakpointInterceptor.getConsClassName:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
aload 3
aload 2
invokevirtual com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator.calculateChecksum:(Ljava/lang/String;Ljava/lang/String;Lorg/graalvm/word/WordBase;)Ljava/lang/String;
astore 6
15: goto 18
StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle int java.lang.String com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator
StackMap stack: java.security.NoSuchAlgorithmException
16: astore 8
start local 8 17: ldc "Building serialization checksum failed"
aload 8
invokestatic com.oracle.svm.core.util.VMError.shouldNotReachHere:(Ljava/lang/String;Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 8 18: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 8
start local 8 19: aload 8
new com.oracle.svm.agent.BreakpointInterceptor$SerializationInfo
dup
aload 3
aload 6
invokespecial com.oracle.svm.agent.BreakpointInterceptor$SerializationInfo.<init>:(Ljava/lang/String;Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
20: getstatic com.oracle.svm.agent.BreakpointInterceptor.agent:Lcom/oracle/svm/agent/NativeImageAgent;
invokevirtual com.oracle.svm.agent.NativeImageAgent.handles:()Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
checkcast com.oracle.svm.agent.NativeImageAgentJNIHandleSet
aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
invokevirtual com.oracle.svm.agent.NativeImageAgentJNIHandleSet.getJavaIoObjectStreamClassGetClassDataLayout0:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 9
start local 9 21: aload 0
aload 4
aload 9
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 10
start local 10 22: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifne 50
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
aload 10
invokeinterface org.graalvm.word.SignedWord.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
ifeq 50
23: invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetArrayLength:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetArrayLengthFunctionPointer;
aload 0
aload 10
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetArrayLengthFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)I
istore 11
start local 11 24: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifne 50
iload 11
iconst_1
if_icmple 50
25: getstatic com.oracle.svm.agent.BreakpointInterceptor.agent:Lcom/oracle/svm/agent/NativeImageAgent;
invokevirtual com.oracle.svm.agent.NativeImageAgent.handles:()Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
checkcast com.oracle.svm.agent.NativeImageAgentJNIHandleSet
aload 0
invokevirtual com.oracle.svm.agent.NativeImageAgentJNIHandleSet.getJavaIOObjectStreamClassClassDataSlotHasData:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
astore 12
start local 12 26: getstatic com.oracle.svm.agent.BreakpointInterceptor.agent:Lcom/oracle/svm/agent/NativeImageAgent;
invokevirtual com.oracle.svm.agent.NativeImageAgent.handles:()Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
checkcast com.oracle.svm.agent.NativeImageAgentJNIHandleSet
aload 0
invokevirtual com.oracle.svm.agent.NativeImageAgentJNIHandleSet.getJavaIOObjectStreamClassClassDataSlotDesc:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
astore 13
start local 13 27: getstatic com.oracle.svm.agent.BreakpointInterceptor.agent:Lcom/oracle/svm/agent/NativeImageAgent;
invokevirtual com.oracle.svm.agent.NativeImageAgent.handles:()Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
checkcast com.oracle.svm.agent.NativeImageAgentJNIHandleSet
aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
invokevirtual com.oracle.svm.agent.NativeImageAgentJNIHandleSet.getJavaIoObjectStreamClassForClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 14
start local 14 28: iconst_0
istore 15
start local 15 29: goto 49
30: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle int java.lang.String com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator java.util.List com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jni.nativeapi.JNIObjectHandle int com.oracle.svm.jni.nativeapi.JNIFieldId com.oracle.svm.jni.nativeapi.JNIFieldId com.oracle.svm.jni.nativeapi.JNIMethodId int
StackMap stack:
invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetObjectArrayElement:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetObjectArrayElementFunctionPointer;
aload 0
aload 10
iload 15
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetObjectArrayElementFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;I)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 16
start local 16 31: invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetBooleanField:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetBooleanFieldFunctionPointer;
aload 0
aload 16
aload 12
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetBooleanFieldFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIFieldId;)Z
istore 17
start local 17 32: iload 17
ifeq 48
33: invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getGetObjectField:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$GetObjectFieldFunctionPointer;
aload 0
aload 16
aload 13
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetObjectFieldFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIFieldId;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 18
start local 18 34: invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getIsSameObject:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$IsSameObjectFunctionPointer;
aload 0
aload 18
aload 4
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$IsSameObjectFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
ifne 48
35: aload 0
aload 18
aload 14
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 19
start local 19 36: aload 0
aload 19
invokestatic com.oracle.svm.jvmtiagentbase.Support.getClassNameOrNull:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 20
start local 20 37: aconst_null
astore 21
start local 21 38: aload 7
ifnull 47
39: aload 7
aload 0
40: aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 18
41: invokestatic com.oracle.svm.agent.BreakpointInterceptor.getConsClassName:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
42: aload 20
aload 19
43: invokevirtual com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator.calculateChecksum:(Ljava/lang/String;Ljava/lang/String;Lorg/graalvm/word/WordBase;)Ljava/lang/String;
astore 21
44: goto 47
StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle int java.lang.String com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator java.util.List com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jni.nativeapi.JNIObjectHandle int com.oracle.svm.jni.nativeapi.JNIFieldId com.oracle.svm.jni.nativeapi.JNIFieldId com.oracle.svm.jni.nativeapi.JNIMethodId int com.oracle.svm.jni.nativeapi.JNIObjectHandle int com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String java.lang.String
StackMap stack: java.security.NoSuchAlgorithmException
45: astore 22
start local 22 46: ldc "Building serialization checksum failed"
aload 22
invokestatic com.oracle.svm.core.util.VMError.shouldNotReachHere:(Ljava/lang/String;Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
end local 22 47: StackMap locals:
StackMap stack:
aload 8
new com.oracle.svm.agent.BreakpointInterceptor$SerializationInfo
dup
aload 20
aload 21
invokespecial com.oracle.svm.agent.BreakpointInterceptor$SerializationInfo.<init>:(Ljava/lang/String;Ljava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 48: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle int java.lang.String com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator java.util.List com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jni.nativeapi.JNIObjectHandle int com.oracle.svm.jni.nativeapi.JNIFieldId com.oracle.svm.jni.nativeapi.JNIFieldId com.oracle.svm.jni.nativeapi.JNIMethodId int
StackMap stack:
iinc 15 1
StackMap locals:
StackMap stack:
49: iload 15
iload 11
if_icmplt 30
end local 15 end local 14 end local 13 end local 12 end local 11 50: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle int java.lang.String com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator java.util.List com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 8
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 12
goto 64
StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle int java.lang.String com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator java.util.List com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jni.nativeapi.JNIObjectHandle top java.util.Iterator
StackMap stack:
51: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.svm.agent.BreakpointInterceptor$SerializationInfo
astore 11
start local 11 52: getstatic com.oracle.svm.agent.BreakpointInterceptor.traceWriter:Lcom/oracle/svm/agent/TraceWriter;
ifnull 64
53: getstatic com.oracle.svm.agent.BreakpointInterceptor.traceWriter:Lcom/oracle/svm/agent/TraceWriter;
ldc "serialization"
54: ldc "ObjectStreamClass.<init>"
55: aconst_null
56: aconst_null
57: aconst_null
58: iload 5
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_2
anewarray java.lang.Object
dup
iconst_0
59: aload 11
getfield com.oracle.svm.agent.BreakpointInterceptor$SerializationInfo.className:Ljava/lang/String;
aastore
dup
iconst_1
aload 11
getfield com.oracle.svm.agent.BreakpointInterceptor$SerializationInfo.checksum:Ljava/lang/String;
aastore
60: 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
61: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.testException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 62
iconst_0
goto 63
StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle int java.lang.String com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator java.util.List com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.agent.BreakpointInterceptor$SerializationInfo java.util.Iterator
StackMap stack:
62: iconst_1
StackMap locals:
StackMap stack: int
63: invokestatic com.oracle.svm.core.util.VMError.guarantee:(Z)V
end local 11 64: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.jni.nativeapi.JNIObjectHandle int java.lang.String com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator java.util.List com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jni.nativeapi.JNIObjectHandle top java.util.Iterator
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 51
65: iconst_1
ireturn
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 66 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 66 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
1 66 2 serializeTargetClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 66 3 serializeTargetClassName Ljava/lang/String;
3 66 4 objectStreamClassInstance Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
4 66 5 validObjectStreamClassInstance Z
9 66 6 checksum Ljava/lang/String;
10 66 7 checkSumCalculator Lcom/oracle/svm/agent/BreakpointInterceptor$CheckSumCalculator;
17 18 8 e Ljava/security/NoSuchAlgorithmException;
19 66 8 traceCandidates Ljava/util/List<Lcom/oracle/svm/agent/BreakpointInterceptor$SerializationInfo;>;
21 66 9 getClassDataLayout0MId Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
22 66 10 dataLayoutArray Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
24 50 11 length I
26 50 12 hasDataFId Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
27 50 13 descFId Lcom/oracle/svm/jni/nativeapi/JNIFieldId;
28 50 14 javaIoObjectStreamClassForClassMId Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
29 50 15 i I
31 48 16 classDataSlot Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
32 48 17 hasData Z
34 48 18 oscInstanceInSlot Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
36 48 19 oscClazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
37 48 20 oscClassName Ljava/lang/String;
38 48 21 calculatedChecksum Ljava/lang/String;
46 47 22 e Ljava/security/NoSuchAlgorithmException;
52 64 11 serializationInfo Lcom/oracle/svm/agent/BreakpointInterceptor$SerializationInfo;
Exception table:
from to target type
13 15 16 Class java.security.NoSuchAlgorithmException
39 44 45 Class java.security.NoSuchAlgorithmException
MethodParameters:
Name Flags
jni
bp
private static java.lang.String getConsClassName(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
ldc "cons"
ldc "Ljava/lang/reflect/Constructor;"
invokestatic com.oracle.svm.jvmtiagentbase.Support.getObjectField:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 1: ldc ""
astore 4
start local 4 2: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
aload 3
invokeinterface org.graalvm.word.SignedWord.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
ifeq 4
3: aload 0
aload 0
aload 3
getstatic com.oracle.svm.agent.BreakpointInterceptor.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;
invokestatic com.oracle.svm.jvmtiagentbase.Support.getClassNameOrNull:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 4
4: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 5 1 objectStreamClassClazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 5 2 objectStreamClassInstance Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
1 5 3 cons Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 5 4 targetConstructorClassName Ljava/lang/String;
MethodParameters:
Name Flags
jni
objectStreamClassClazz
objectStreamClassInstance
private static void onBreakpoint(com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv, com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIMethodId, long);
descriptor: (Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;J)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic com.oracle.svm.agent.BreakpointInterceptor.recursive:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
getstatic com.oracle.svm.agent.BreakpointInterceptor.recursive:Ljava/lang/ThreadLocal;
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
3: getstatic com.oracle.svm.agent.BreakpointInterceptor.installedBreakpoints:Ljava/util/Map;
aload 3
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.rawValue:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.svm.agent.BreakpointInterceptor$Breakpoint
astore 6
start local 6 4: aload 6
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.handler:Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
aload 1
aload 6
invokeinterface com.oracle.svm.agent.BreakpointInterceptor$BreakpointHandler.dispatch:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;)Z
ifeq 15
5: aload 1
invokestatic com.oracle.svm.jvmtiagentbase.Support.testException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifeq 6
iconst_0
goto 7
StackMap locals: com.oracle.svm.agent.BreakpointInterceptor$Breakpoint
StackMap stack:
6: iconst_1
StackMap locals:
StackMap stack: int
7: invokestatic com.oracle.svm.core.util.VMError.guarantee:(Z)V
end local 6 8: goto 15
StackMap locals: com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle com.oracle.svm.jni.nativeapi.JNIMethodId long
StackMap stack: java.lang.Throwable
9: astore 6
start local 6 10: aload 6
invokestatic com.oracle.svm.core.util.VMError.shouldNotReachHere:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
pop
end local 6 11: getstatic com.oracle.svm.agent.BreakpointInterceptor.recursive:Ljava/lang/ThreadLocal;
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
goto 16
12: StackMap locals:
StackMap stack: java.lang.Throwable
astore 7
13: getstatic com.oracle.svm.agent.BreakpointInterceptor.recursive:Ljava/lang/ThreadLocal;
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
14: aload 7
athrow
15: StackMap locals:
StackMap stack:
getstatic com.oracle.svm.agent.BreakpointInterceptor.recursive:Ljava/lang/ThreadLocal;
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
16: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 jvmti Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
0 17 1 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 17 2 thread Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 17 3 method Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
0 17 4 location J
4 8 6 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
10 11 6 t Ljava/lang/Throwable;
Exception table:
from to target type
3 8 9 Class java.lang.Throwable
3 11 12 any
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
MethodParameters:
Name Flags
jvmti
jni
thread
method
location
private static void onNativeMethodBind(com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv, com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIMethodId, org.graalvm.nativeimage.c.function.CodePointer, org.graalvm.nativeimage.c.type.WordPointer);
descriptor: (Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;Lorg/graalvm/nativeimage/c/function/CodePointer;Lorg/graalvm/nativeimage/c/type/WordPointer;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: getstatic com.oracle.svm.agent.BreakpointInterceptor.recursive:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
getstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpointsInitLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.lock:()V
3: getstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpoints:Ljava/util/Map;
ifnull 8
4: getstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpoints:Ljava/util/Map;
aload 3
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.rawValue:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint
astore 6
start local 6 5: aload 6
ifnull 13
6: aload 1
aload 6
aload 4
aload 5
invokestatic com.oracle.svm.agent.BreakpointInterceptor.bindNativeBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpoint;Lorg/graalvm/nativeimage/c/function/CodePointer;Lorg/graalvm/nativeimage/c/type/WordPointer;)V
end local 6 7: goto 13
8: StackMap locals:
StackMap stack:
getstatic com.oracle.svm.agent.BreakpointInterceptor.boundNativeMethods:Ljava/util/Map;
aload 3
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.rawValue:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 4
invokeinterface org.graalvm.nativeimage.c.function.CodePointer.rawValue:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
9: goto 13
StackMap locals:
StackMap stack: java.lang.Throwable
10: astore 7
11: getstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpointsInitLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
12: aload 7
athrow
13: StackMap locals:
StackMap stack:
getstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpointsInitLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
14: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 jvmti Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
0 15 1 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 15 2 thread Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 15 3 method Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
0 15 4 address Lorg/graalvm/nativeimage/c/function/CodePointer;
0 15 5 newAddressPtr Lorg/graalvm/nativeimage/c/type/WordPointer;
5 7 6 bp Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpoint;
Exception table:
from to target type
3 10 10 any
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
MethodParameters:
Name Flags
jvmti
jni
thread
method
address
newAddressPtr
private static void onClassPrepare(com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv, com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, com.oracle.svm.jni.nativeapi.JNIObjectHandle);
descriptor: (Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.svm.agent.BreakpointInterceptor.$assertionsDisabled:Z
ifne 1
getstatic com.oracle.svm.agent.BreakpointInterceptor.experimentalClassLoaderSupport:Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
aload 3
getstatic com.oracle.svm.agent.BreakpointInterceptor.installedBreakpoints:Ljava/util/Map;
invokestatic com.oracle.svm.agent.BreakpointInterceptor.installBreakpointIfClassLoader:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/util/Map;)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 jvmti Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
0 3 1 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 3 2 thread Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 3 3 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
RuntimeVisibleAnnotations:
org.graalvm.nativeimage.c.function.CEntryPoint()
com.oracle.svm.core.c.function.CEntryPointOptions(prologue = Lcom/oracle/svm/jvmtiagentbase/AgentIsolate$Prologue;)
MethodParameters:
Name Flags
jvmti
jni
thread
clazz
private static void installBreakpointIfClassLoader(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, java.util.Map<java.lang.Long, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint>);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/util/Map;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=8, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.svm.jvmtiagentbase.Support.jniFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getIsAssignableFrom:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$IsAssignableFromFunctionPointer;
aload 0
aload 1
getstatic com.oracle.svm.agent.BreakpointInterceptor.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.javaLangClassLoader:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$IsAssignableFromFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Z
ifeq 9
1: aload 0
aload 1
invokestatic com.oracle.svm.jvmtiagentbase.Support.getClassNameOrNull:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Ljava/lang/String;
astore 3
start local 3 2: aload 3
ifnull 9
3: getstatic com.oracle.svm.agent.BreakpointInterceptor.CLASSLOADER_LOAD_CLASS_BREAKPOINT_SPECIFICATION:Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
astore 4
start local 4 4: aload 0
aload 1
aload 4
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aload 4
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.signature:Ljava/lang/String;
iconst_1
invokestatic com.oracle.svm.agent.BreakpointInterceptor.resolveBreakpointMethod:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 5
start local 5 5: aload 5
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNonNull:()Z
ifeq 9
invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.SetBreakpoint:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$SetBreakpointFunctionPointer;
invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
aload 5
lconst_0
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$SetBreakpointFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;J)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiError.JVMTI_ERROR_NONE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
if_acmpne 9
6: new com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
dup
aload 3
aload 4
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aload 4
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.signature:Ljava/lang/String;
aload 4
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.handler:Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
aload 4
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.optional:Z
invokespecial com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;Z)V
astore 6
start local 6 7: getstatic com.oracle.svm.agent.BreakpointInterceptor.agent:Lcom/oracle/svm/agent/NativeImageAgent;
invokevirtual com.oracle.svm.agent.NativeImageAgent.handles:()Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
checkcast com.oracle.svm.agent.NativeImageAgentJNIHandleSet
aload 0
aload 1
invokevirtual com.oracle.svm.agent.NativeImageAgentJNIHandleSet.newTrackedGlobalRef:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 7
start local 7 8: aload 2
aload 5
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.rawValue:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
new com.oracle.svm.agent.BreakpointInterceptor$Breakpoint
dup
aload 6
aload 7
aload 5
invokespecial com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.<init>:(Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 7 end local 6 end local 5 end local 4 end local 3 9: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 10 1 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 10 2 breakpoints Ljava/util/Map<Ljava/lang/Long;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;>;
2 9 3 className Ljava/lang/String;
4 9 4 proto Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
5 9 5 method Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
7 9 6 spec Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
8 9 7 gclazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
Signature: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/util/Map<Ljava/lang/Long;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;>;)V
MethodParameters:
Name Flags
jni
clazz
breakpoints
public static void onLoad(com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv, com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEventCallbacks, com.oracle.svm.agent.TraceWriter, com.oracle.svm.agent.NativeImageAgent, boolean, boolean);
descriptor: (Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEventCallbacks;Lcom/oracle/svm/agent/TraceWriter;Lcom/oracle/svm/agent/NativeImageAgent;ZZ)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 2
putstatic com.oracle.svm.agent.BreakpointInterceptor.traceWriter:Lcom/oracle/svm/agent/TraceWriter;
1: aload 3
putstatic com.oracle.svm.agent.BreakpointInterceptor.agent:Lcom/oracle/svm/agent/NativeImageAgent;
2: iload 4
putstatic com.oracle.svm.agent.BreakpointInterceptor.experimentalClassLoaderSupport:Z
3: iload 5
putstatic com.oracle.svm.agent.BreakpointInterceptor.writeSerializationChecksums:Z
4: ldc Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiCapabilities;
invokestatic org.graalvm.nativeimage.c.struct.SizeOf.get:(Ljava/lang/Class;)I
invokestatic org.graalvm.nativeimage.UnmanagedMemory.calloc:(I)Lorg/graalvm/word/PointerBase;
checkcast com.oracle.svm.jvmtiagentbase.jvmti.JvmtiCapabilities
astore 6
start local 6 5: aload 0
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv.getFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetCapabilities:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$CapabilitiesFunctionPointer;
aload 0
aload 6
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$CapabilitiesFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiCapabilities;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
invokestatic com.oracle.svm.jvmtiagentbase.Support.check:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;)V
6: aload 6
iconst_1
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiCapabilities.setCanGenerateBreakpointEvents:(I)V
7: aload 6
iconst_1
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiCapabilities.setCanAccessLocalVariables:(I)V
8: aload 6
iconst_1
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiCapabilities.setCanGenerateNativeMethodBindEvents:(I)V
9: iload 4
ifeq 18
10: aload 6
iconst_1
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiCapabilities.setCanGetBytecodes:(I)V
11: aload 6
iconst_1
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiCapabilities.setCanGetConstantPool:(I)V
12: ldc Lorg/graalvm/nativeimage/c/type/CIntPointer;
invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
checkcast org.graalvm.nativeimage.c.type.CIntPointer
astore 7
start local 7 13: aload 0
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv.getFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetJLocationFormat:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetJLocationFormatFunctionPointer;
aload 0
aload 7
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetJLocationFormatFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lorg/graalvm/nativeimage/c/type/CIntPointer;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiError.JVMTI_ERROR_NONE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
if_acmpne 15
14: aload 7
invokeinterface org.graalvm.nativeimage.c.type.CIntPointer.read:()I
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiLocationFormat.JVMTI_JLOCATION_JVMBCI:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiLocationFormat;
invokevirtual com.oracle.svm.jvmtiagentbase.jvmti.JvmtiLocationFormat.getCValue:()I
if_icmpne 15
iconst_1
goto 16
StackMap locals: com.oracle.svm.jvmtiagentbase.jvmti.JvmtiCapabilities org.graalvm.nativeimage.c.type.CIntPointer
StackMap stack:
15: iconst_0
StackMap locals:
StackMap stack: int
16: ldc "Expecting BCI locations"
17: invokestatic com.oracle.svm.core.util.VMError.guarantee:(ZLjava/lang/String;)V
end local 7 18: StackMap locals:
StackMap stack:
aload 0
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv.getFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.AddCapabilities:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$CapabilitiesFunctionPointer;
aload 0
aload 6
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$CapabilitiesFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiCapabilities;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
invokestatic com.oracle.svm.jvmtiagentbase.Support.check:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;)V
19: aload 6
invokestatic org.graalvm.nativeimage.UnmanagedMemory.free:(Lorg/graalvm/word/PointerBase;)V
20: aload 1
getstatic com.oracle.svm.agent.BreakpointInterceptor.onBreakpointLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEventCallbacks.setBreakpoint:(Lorg/graalvm/nativeimage/c/function/CFunctionPointer;)V
21: aload 1
getstatic com.oracle.svm.agent.BreakpointInterceptor.onNativeMethodBindLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEventCallbacks.setNativeMethodBind:(Lorg/graalvm/nativeimage/c/function/CFunctionPointer;)V
22: iload 4
ifeq 24
23: aload 1
getstatic com.oracle.svm.agent.BreakpointInterceptor.onClassPrepareLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEventCallbacks.setClassPrepare:(Lorg/graalvm/nativeimage/c/function/CFunctionPointer;)V
24: StackMap locals:
StackMap stack:
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic com.oracle.svm.agent.BreakpointInterceptor.boundNativeMethods:Ljava/util/Map;
25: aload 0
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv.getFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.SetEventNotificationMode:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$SetEventNotificationModeFunctionPointer;
aload 0
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEventMode.JVMTI_ENABLE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEventMode;
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEvent.JVMTI_EVENT_NATIVE_METHOD_BIND:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEvent;
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$SetEventNotificationModeFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEventMode;Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEvent;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
invokestatic com.oracle.svm.jvmtiagentbase.Support.check:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;)V
26: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 jvmti Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
0 27 1 callbacks Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEventCallbacks;
0 27 2 writer Lcom/oracle/svm/agent/TraceWriter;
0 27 3 nativeImageTracingAgent Lcom/oracle/svm/agent/NativeImageAgent;
0 27 4 exptlClassLoaderSupport Z
0 27 5 serializationChecksums Z
5 27 6 capabilities Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiCapabilities;
13 18 7 formatPtr Lorg/graalvm/nativeimage/c/type/CIntPointer;
MethodParameters:
Name Flags
jvmti
callbacks
writer
nativeImageTracingAgent
exptlClassLoaderSupport
serializationChecksums
public static void onVMInit(com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv, com.oracle.svm.jni.nativeapi.JNIEnvironment);
descriptor: (Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=14, args_size=2
start local 0 start local 1 0: getstatic com.oracle.svm.agent.BreakpointInterceptor.experimentalClassLoaderSupport:Z
ifeq 15
1: new java.util.concurrent.ConcurrentHashMap
dup
getstatic com.oracle.svm.agent.BreakpointInterceptor.BREAKPOINT_SPECIFICATIONS:[Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
arraylength
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:(I)V
astore 2
start local 2 2: new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putstatic com.oracle.svm.agent.BreakpointInterceptor.observedExplicitLoadClassCallSites:Ljava/util/concurrent/ConcurrentMap;
3: ldc Lorg/graalvm/nativeimage/c/type/CIntPointer;
invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
checkcast org.graalvm.nativeimage.c.type.CIntPointer
astore 3
start local 3 4: 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 4
start local 4 5: invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.GetLoadedClasses:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$GetLoadedClassesFunctionPointer;
aload 0
aload 3
aload 4
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetLoadedClassesFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lorg/graalvm/nativeimage/c/type/CIntPointer;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
6: aload 4
invokeinterface org.graalvm.nativeimage.c.type.WordPointer.read:()Lorg/graalvm/word/WordBase;
checkcast org.graalvm.nativeimage.c.type.WordPointer
astore 5
start local 5 7: iconst_0
istore 6
start local 6 8: goto 12
9: StackMap locals: com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv com.oracle.svm.jni.nativeapi.JNIEnvironment java.util.Map org.graalvm.nativeimage.c.type.CIntPointer org.graalvm.nativeimage.c.type.WordPointer org.graalvm.nativeimage.c.type.WordPointer int
StackMap stack:
aload 5
iload 6
invokeinterface org.graalvm.nativeimage.c.type.WordPointer.read:(I)Lorg/graalvm/word/WordBase;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 7
start local 7 10: aload 1
aload 7
aload 2
invokestatic com.oracle.svm.agent.BreakpointInterceptor.installBreakpointIfClassLoader:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/util/Map;)V
end local 7 11: iinc 6 1
StackMap locals:
StackMap stack:
12: iload 6
aload 3
invokeinterface org.graalvm.nativeimage.c.type.CIntPointer.read:()I
if_icmplt 9
end local 6 13: 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;
aload 0
aload 5
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
end local 5 end local 4 end local 3 14: goto 16
end local 2 15: StackMap locals: com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv com.oracle.svm.jni.nativeapi.JNIEnvironment
StackMap stack:
new java.util.HashMap
dup
getstatic com.oracle.svm.agent.BreakpointInterceptor.BREAKPOINT_SPECIFICATIONS:[Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
arraylength
invokespecial java.util.HashMap.<init>:(I)V
astore 2
start local 2 16: StackMap locals: java.util.Map
StackMap stack:
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 3
start local 3 17: aconst_null
astore 4
start local 4 18: getstatic com.oracle.svm.agent.BreakpointInterceptor.BREAKPOINT_SPECIFICATIONS:[Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 28
StackMap locals: com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv com.oracle.svm.jni.nativeapi.JNIEnvironment java.util.Map com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String top int int com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification[]
StackMap stack:
19: aload 8
iload 6
aaload
astore 5
start local 5 20: invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
astore 9
start local 9 21: aload 4
ifnull 23
aload 4
aload 5
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.className:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 23
22: aload 3
astore 9
23: StackMap locals: com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv com.oracle.svm.jni.nativeapi.JNIEnvironment java.util.Map com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification int int com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification[] com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 1
aload 5
aload 2
aload 9
invokestatic com.oracle.svm.agent.BreakpointInterceptor.installBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;Ljava/util/Map;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
astore 10
start local 10 24: aload 10
ifnull 27
25: aload 10
getfield com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
26: aload 5
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.className:Ljava/lang/String;
astore 4
end local 10 end local 9 end local 5 27: StackMap locals: com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv com.oracle.svm.jni.nativeapi.JNIEnvironment java.util.Map com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String top int int com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification[]
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
28: iload 6
iload 7
if_icmplt 19
29: aload 2
putstatic com.oracle.svm.agent.BreakpointInterceptor.installedBreakpoints:Ljava/util/Map;
30: getstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpointsInitLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.lock:()V
31: new java.util.HashMap
dup
getstatic com.oracle.svm.agent.BreakpointInterceptor.NATIVE_BREAKPOINT_SPECIFICATIONS:[Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;
arraylength
invokespecial java.util.HashMap.<init>:(I)V
putstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpoints:Ljava/util/Map;
32: getstatic com.oracle.svm.agent.BreakpointInterceptor.NATIVE_BREAKPOINT_SPECIFICATIONS:[Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 48
StackMap locals: com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv com.oracle.svm.jni.nativeapi.JNIEnvironment java.util.Map com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String top int int com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification[]
StackMap stack:
33: aload 8
iload 6
aaload
astore 5
start local 5 34: aload 4
ifnull 37
aload 4
aload 5
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.className:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 37
35: aload 3
astore 9
start local 9 36: goto 40
end local 9 37: StackMap locals: com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv com.oracle.svm.jni.nativeapi.JNIEnvironment java.util.Map com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification int int com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification[]
StackMap stack:
aload 1
aload 5
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.className:Ljava/lang/String;
aload 5
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.optional:Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.resolveBreakpointClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 9
start local 9 38: aload 9
astore 3
39: aload 5
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.className:Ljava/lang/String;
astore 4
40: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 1
aload 9
aload 5
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.methodName:Ljava/lang/String;
aload 5
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.signature:Ljava/lang/String;
aload 5
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.optional:Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.resolveBreakpointMethod:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 10
start local 10 41: aload 10
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNonNull:()Z
ifeq 47
42: new com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint
dup
aload 5
aload 9
aload 10
invokespecial com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint.<init>:(Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)V
astore 11
start local 11 43: getstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpoints:Ljava/util/Map;
aload 10
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.rawValue:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 11
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
44: getstatic com.oracle.svm.agent.BreakpointInterceptor.boundNativeMethods:Ljava/util/Map;
aload 10
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.rawValue:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Long
astore 12
start local 12 45: aload 12
ifnull 47
46: aload 1
aload 11
aload 12
invokevirtual java.lang.Long.longValue:()J
invokestatic org.graalvm.word.WordFactory.pointer:(J)Lorg/graalvm/word/PointerBase;
checkcast org.graalvm.nativeimage.c.function.CodePointer
invokestatic org.graalvm.word.WordFactory.nullPointer:()Lorg/graalvm/word/PointerBase;
checkcast org.graalvm.nativeimage.c.type.WordPointer
invokestatic com.oracle.svm.agent.BreakpointInterceptor.bindNativeBreakpoint:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpoint;Lorg/graalvm/nativeimage/c/function/CodePointer;Lorg/graalvm/nativeimage/c/type/WordPointer;)V
end local 12 end local 11 end local 10 end local 9 end local 5 47: StackMap locals: com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv com.oracle.svm.jni.nativeapi.JNIEnvironment java.util.Map com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String top int int com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification[]
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
48: iload 6
iload 7
if_icmplt 33
49: aconst_null
putstatic com.oracle.svm.agent.BreakpointInterceptor.boundNativeMethods:Ljava/util/Map;
50: goto 54
StackMap locals: com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv com.oracle.svm.jni.nativeapi.JNIEnvironment java.util.Map com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String
StackMap stack: java.lang.Throwable
51: astore 13
52: getstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpointsInitLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
53: aload 13
athrow
54: StackMap locals:
StackMap stack:
getstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpointsInitLock:Ljava/util/concurrent/locks/ReentrantLock;
invokevirtual java.util.concurrent.locks.ReentrantLock.unlock:()V
55: aload 0
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv.getFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.SetEventNotificationMode:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$SetEventNotificationModeFunctionPointer;
aload 0
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEventMode.JVMTI_ENABLE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEventMode;
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEvent.JVMTI_EVENT_BREAKPOINT:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEvent;
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$SetEventNotificationModeFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEventMode;Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEvent;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
invokestatic com.oracle.svm.jvmtiagentbase.Support.check:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;)V
56: getstatic com.oracle.svm.agent.BreakpointInterceptor.experimentalClassLoaderSupport:Z
ifeq 58
57: aload 0
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEnv.getFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.SetEventNotificationMode:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$SetEventNotificationModeFunctionPointer;
aload 0
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEventMode.JVMTI_ENABLE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEventMode;
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiEvent.JVMTI_EVENT_CLASS_PREPARE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEvent;
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$SetEventNotificationModeFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEventMode;Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEvent;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
invokestatic com.oracle.svm.jvmtiagentbase.Support.check:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;)V
58: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 59 0 jvmti Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
0 59 1 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
2 15 2 breakpoints Ljava/util/Map<Ljava/lang/Long;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;>;
16 59 2 breakpoints Ljava/util/Map<Ljava/lang/Long;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;>;
4 14 3 classCountPtr Lorg/graalvm/nativeimage/c/type/CIntPointer;
5 14 4 classesPtr Lorg/graalvm/nativeimage/c/type/WordPointer;
7 14 5 classesArray Lorg/graalvm/nativeimage/c/type/WordPointer;
8 13 6 i I
10 11 7 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
17 59 3 lastClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
18 59 4 lastClassName Ljava/lang/String;
20 27 5 br Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
21 27 9 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
24 27 10 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
34 47 5 br Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpointSpecification;
36 37 9 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
38 47 9 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
41 47 10 method Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
43 47 11 bp Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpoint;
45 47 12 original Ljava/lang/Long;
Exception table:
from to target type
31 51 51 any
MethodParameters:
Name Flags
jvmti
jni
private static com.oracle.svm.agent.BreakpointInterceptor$Breakpoint installBreakpoint(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification, java.util.Map<java.lang.Long, com.oracle.svm.agent.BreakpointInterceptor$Breakpoint>, com.oracle.svm.jni.nativeapi.JNIObjectHandle);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;Ljava/util/Map;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
astore 4
start local 4 1: aload 4
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.equal:(Lorg/graalvm/word/ComparableWord;)Z
ifeq 6
2: aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.className:Ljava/lang/String;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.optional:Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.resolveBreakpointClass:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 4
3: aload 4
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.equal:(Lorg/graalvm/word/ComparableWord;)Z
ifeq 6
4: aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.optional:Z
invokestatic com.oracle.svm.core.util.VMError.guarantee:(Z)V
5: aconst_null
areturn
6: StackMap locals: com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
aload 0
aload 4
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.methodName:Ljava/lang/String;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.signature:Ljava/lang/String;
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.optional:Z
invokestatic com.oracle.svm.agent.BreakpointInterceptor.resolveBreakpointMethod:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 5
start local 5 7: invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiFunctions:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface;
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface.SetBreakpoint:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiInterface$SetBreakpointFunctionPointer;
invokestatic com.oracle.svm.jvmtiagentbase.Support.jvmtiEnv:()Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;
aload 5
lconst_0
invokeinterface com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$SetBreakpointFunctionPointer.invoke:(Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiEnv;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;J)Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
astore 6
start local 6 8: aload 6
getstatic com.oracle.svm.jvmtiagentbase.jvmti.JvmtiError.JVMTI_ERROR_NONE:Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
if_acmpeq 11
9: aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.optional:Z
ldc "Setting breakpoint failed"
invokestatic com.oracle.svm.core.util.VMError.guarantee:(ZLjava/lang/String;)V
10: aconst_null
areturn
11: StackMap locals: com.oracle.svm.jni.nativeapi.JNIMethodId com.oracle.svm.jvmtiagentbase.jvmti.JvmtiError
StackMap stack:
new com.oracle.svm.agent.BreakpointInterceptor$Breakpoint
dup
aload 1
aload 4
aload 5
invokespecial com.oracle.svm.agent.BreakpointInterceptor$Breakpoint.<init>:(Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNIMethodId;)V
astore 7
start local 7 12: aload 2
aload 5
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.rawValue:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 7
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
ifnonnull 13
iconst_1
goto 14
StackMap locals: com.oracle.svm.agent.BreakpointInterceptor$Breakpoint
StackMap stack:
13: iconst_0
StackMap locals:
StackMap stack: int
14: new java.lang.StringBuilder
dup
ldc "Duplicate breakpoint: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.oracle.svm.core.util.VMError.guarantee:(ZLjava/lang/String;)V
15: aload 7
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 16 1 br Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
0 16 2 map Ljava/util/Map<Ljava/lang/Long;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;>;
0 16 3 knownClass Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
1 16 4 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
7 16 5 method Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
8 16 6 result Lcom/oracle/svm/jvmtiagentbase/jvmti/JvmtiError;
12 16 7 bp Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
Signature: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;Ljava/util/Map<Ljava/lang/Long;Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;>;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/agent/BreakpointInterceptor$Breakpoint;
MethodParameters:
Name Flags
jni
br
map
knownClass
private static com.oracle.svm.jni.nativeapi.JNIObjectHandle resolveBreakpointClass(com.oracle.svm.jni.nativeapi.JNIEnvironment, java.lang.String, boolean);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 4
aconst_null
astore 5
1: aload 1
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 6
start local 6 2: 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
aload 6
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FindClassFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lorg/graalvm/nativeimage/c/type/CCharPointer;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
start local 3 3: iload 2
ifeq 7
aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifne 4
aload 3
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.equal:(Lorg/graalvm/word/ComparableWord;)Z
ifeq 7
4: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment java.lang.String int com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack:
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
checkcast com.oracle.svm.jni.nativeapi.JNIObjectHandle
5: aload 6
ifnull 6
aload 6
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
6: StackMap locals:
StackMap stack: com.oracle.svm.jni.nativeapi.JNIObjectHandle
areturn
7: StackMap locals:
StackMap stack:
aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.checkNoException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)V
8: aload 6
ifnull 14
aload 6
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
goto 14
end local 3 StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment java.lang.String int top java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack: java.lang.Throwable
9: astore 4
aload 6
ifnull 10
aload 6
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 6 StackMap locals:
StackMap stack:
10: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 5
aload 4
ifnonnull 12
aload 5
astore 4
goto 13
StackMap locals:
StackMap stack:
12: aload 4
aload 5
if_acmpeq 13
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
13: aload 4
athrow
start local 3 14: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment java.lang.String int com.oracle.svm.jni.nativeapi.JNIObjectHandle
StackMap stack:
getstatic com.oracle.svm.agent.BreakpointInterceptor.agent:Lcom/oracle/svm/agent/NativeImageAgent;
invokevirtual com.oracle.svm.agent.NativeImageAgent.handles:()Lcom/oracle/svm/jvmtiagentbase/JNIHandleSet;
checkcast com.oracle.svm.agent.NativeImageAgentJNIHandleSet
aload 0
aload 3
invokevirtual com.oracle.svm.agent.NativeImageAgentJNIHandleSet.newTrackedGlobalRef:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;)Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
astore 3
15: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.checkNoException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)V
16: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 17 1 className Ljava/lang/String;
0 17 2 optional Z
3 9 3 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
14 17 3 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
2 10 6 cname Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
Exception table:
from to target type
2 5 9 any
7 8 9 any
1 6 11 any
7 11 11 any
MethodParameters:
Name Flags
jni
className
optional
private static com.oracle.svm.jni.nativeapi.JNIMethodId resolveBreakpointMethod(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.jni.nativeapi.JNIObjectHandle, java.lang.String, java.lang.String, boolean);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Ljava/lang/String;Ljava/lang/String;Z)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokestatic com.oracle.svm.jni.JNIObjectHandles.nullHandle:()Lorg/graalvm/word/SignedWord;
invokeinterface com.oracle.svm.jni.nativeapi.JNIObjectHandle.notEqual:(Lorg/graalvm/word/ComparableWord;)Z
invokestatic com.oracle.svm.core.util.VMError.guarantee:(Z)V
1: aconst_null
astore 6
aconst_null
astore 7
2: aload 2
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 8
start local 8 3: aload 3
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 9
start local 9 4: 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
aload 1
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetMethodIDFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;Lorg/graalvm/nativeimage/c/type/CCharPointer;)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 5
start local 5 5: aload 5
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNull:()Z
ifeq 8
6: aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
pop
7: 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
aload 1
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetMethodIDFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lorg/graalvm/nativeimage/c/type/CCharPointer;Lorg/graalvm/nativeimage/c/type/CCharPointer;)Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
astore 5
8: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String java.lang.String int com.oracle.svm.jni.nativeapi.JNIMethodId java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack:
aload 9
ifnull 11
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
goto 11
end local 5 StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String java.lang.String int top java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack: java.lang.Throwable
9: astore 6
aload 9
ifnull 10
aload 9
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 9 StackMap locals:
StackMap stack:
10: aload 6
athrow
start local 5 StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String java.lang.String int com.oracle.svm.jni.nativeapi.JNIMethodId java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack:
11: aload 8
ifnull 19
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
goto 19
end local 5 StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String java.lang.String int top java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack: java.lang.Throwable
12: astore 7
aload 6
ifnonnull 13
aload 7
astore 6
goto 14
StackMap locals:
StackMap stack:
13: aload 6
aload 7
if_acmpeq 14
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
14: aload 8
ifnull 15
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 8 StackMap locals:
StackMap stack:
15: aload 6
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
16: astore 7
aload 6
ifnonnull 17
aload 7
astore 6
goto 18
StackMap locals:
StackMap stack:
17: aload 6
aload 7
if_acmpeq 18
aload 6
aload 7
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
18: aload 6
athrow
start local 5 19: StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.jni.nativeapi.JNIObjectHandle java.lang.String java.lang.String int com.oracle.svm.jni.nativeapi.JNIMethodId
StackMap stack:
iload 4
ifeq 21
aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.clearException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifne 20
aload 5
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNull:()Z
ifeq 21
20: StackMap locals:
StackMap stack:
invokestatic org.graalvm.word.WordFactory.nullPointer:()Lorg/graalvm/word/PointerBase;
checkcast com.oracle.svm.jni.nativeapi.JNIMethodId
areturn
21: StackMap locals:
StackMap stack:
aload 0
invokestatic com.oracle.svm.jvmtiagentbase.Support.testException:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;)Z
ifne 22
aload 5
invokeinterface com.oracle.svm.jni.nativeapi.JNIMethodId.isNonNull:()Z
ifeq 22
iconst_1
goto 23
StackMap locals:
StackMap stack:
22: iconst_0
StackMap locals:
StackMap stack: int
23: invokestatic com.oracle.svm.core.util.VMError.guarantee:(Z)V
24: aload 5
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 25 1 clazz Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
0 25 2 methodName Ljava/lang/String;
0 25 3 signature Ljava/lang/String;
0 25 4 optional Z
5 9 5 method Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
11 12 5 method Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
19 25 5 method Lcom/oracle/svm/jni/nativeapi/JNIMethodId;
3 15 8 cname Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
4 10 9 csignature Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
Exception table:
from to target type
4 8 9 any
3 11 12 any
2 16 16 any
MethodParameters:
Name Flags
jni
clazz
methodName
signature
optional
private static void bindNativeBreakpoint(com.oracle.svm.jni.nativeapi.JNIEnvironment, com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint, org.graalvm.nativeimage.c.function.CodePointer, org.graalvm.nativeimage.c.type.WordPointer);
descriptor: (Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpoint;Lorg/graalvm/nativeimage/c/function/CodePointer;Lorg/graalvm/nativeimage/c/type/WordPointer;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.svm.agent.BreakpointInterceptor.$assertionsDisabled:Z
ifne 1
getstatic com.oracle.svm.agent.BreakpointInterceptor.recursive:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
aload 2
putfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint.replacedFunction:Lorg/graalvm/nativeimage/c/function/CodePointer;
2: aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.handlerLiteral:Lorg/graalvm/nativeimage/c/function/CEntryPointLiteral;
invokevirtual org.graalvm.nativeimage.c.function.CEntryPointLiteral.getFunctionPointer:()Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
astore 4
start local 4 3: aload 3
invokeinterface org.graalvm.nativeimage.c.type.WordPointer.isNonNull:()Z
ifeq 6
4: aload 3
aload 4
invokeinterface org.graalvm.nativeimage.c.type.WordPointer.write:(Lorg/graalvm/word/WordBase;)V
5: goto 30
6: StackMap locals: org.graalvm.nativeimage.c.function.CFunctionPointer
StackMap stack:
getstatic com.oracle.svm.agent.BreakpointInterceptor.recursive:Ljava/lang/ThreadLocal;
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
7: aconst_null
astore 5
aconst_null
astore 6
8: aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.methodName:Ljava/lang/String;
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 7
start local 7 9: aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint.specification:Lcom/oracle/svm/agent/BreakpointInterceptor$AbstractBreakpointSpecification;
checkcast com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification.signature:Ljava/lang/String;
invokestatic com.oracle.svm.jvmtiagentbase.Support.toCString:(Ljava/lang/String;)Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
astore 8
start local 8 10: ldc Lcom/oracle/svm/jni/nativeapi/JNINativeMethod;
invokestatic org.graalvm.nativeimage.StackValue.get:(Ljava/lang/Class;)Lorg/graalvm/word/PointerBase;
checkcast com.oracle.svm.jni.nativeapi.JNINativeMethod
astore 9
start local 9 11: aload 9
aload 7
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeMethod.setName:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)V
12: aload 9
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.get:()Lorg/graalvm/nativeimage/c/type/CCharPointer;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeMethod.setSignature:(Lorg/graalvm/nativeimage/c/type/CCharPointer;)V
13: aload 9
aload 4
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeMethod.setFnPtr:(Lorg/graalvm/nativeimage/c/function/CFunctionPointer;)V
14: aload 0
invokeinterface com.oracle.svm.jni.nativeapi.JNIEnvironment.getFunctions:()Lcom/oracle/svm/jni/nativeapi/JNINativeInterface;
invokeinterface com.oracle.svm.jni.nativeapi.JNINativeInterface.getRegisterNatives:()Lcom/oracle/svm/jni/nativeapi/JNIFunctionPointerTypes$RegisterNativesFunctionPointer;
aload 0
aload 1
getfield com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint.clazz:Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;
aload 9
iconst_1
invokeinterface com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$RegisterNativesFunctionPointer.invoke:(Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;Lcom/oracle/svm/jni/nativeapi/JNIObjectHandle;Lcom/oracle/svm/jni/nativeapi/JNINativeMethod;I)I
invokestatic com.oracle.svm.jvmtiagentbase.Support.checkJni:(I)V
end local 9 15: aload 8
ifnull 18
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
goto 18
StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint org.graalvm.nativeimage.c.function.CodePointer org.graalvm.nativeimage.c.type.WordPointer org.graalvm.nativeimage.c.function.CFunctionPointer java.lang.Throwable java.lang.Throwable org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder
StackMap stack: java.lang.Throwable
16: astore 5
aload 8
ifnull 17
aload 8
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 8 StackMap locals:
StackMap stack:
17: aload 5
athrow
StackMap locals:
StackMap stack:
18: aload 7
ifnull 29
aload 7
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
goto 29
StackMap locals:
StackMap stack: java.lang.Throwable
19: astore 6
aload 5
ifnonnull 20
aload 6
astore 5
goto 21
StackMap locals:
StackMap stack:
20: aload 5
aload 6
if_acmpeq 21
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
21: aload 7
ifnull 22
aload 7
invokeinterface org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder.close:()V
end local 7 StackMap locals:
StackMap stack:
22: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
23: astore 6
aload 5
ifnonnull 24
aload 6
astore 5
goto 25
StackMap locals:
StackMap stack:
24: aload 5
aload 6
if_acmpeq 25
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
25: aload 5
athrow
StackMap locals: com.oracle.svm.jni.nativeapi.JNIEnvironment com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint org.graalvm.nativeimage.c.function.CodePointer org.graalvm.nativeimage.c.type.WordPointer org.graalvm.nativeimage.c.function.CFunctionPointer
StackMap stack: java.lang.Throwable
26: astore 10
27: getstatic com.oracle.svm.agent.BreakpointInterceptor.recursive:Ljava/lang/ThreadLocal;
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
28: aload 10
athrow
29: StackMap locals:
StackMap stack:
getstatic com.oracle.svm.agent.BreakpointInterceptor.recursive:Ljava/lang/ThreadLocal;
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
30: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 jni Lcom/oracle/svm/jni/nativeapi/JNIEnvironment;
0 31 1 bp Lcom/oracle/svm/agent/BreakpointInterceptor$NativeBreakpoint;
0 31 2 originalAddress Lorg/graalvm/nativeimage/c/function/CodePointer;
0 31 3 newAddressPtr Lorg/graalvm/nativeimage/c/type/WordPointer;
3 31 4 breakpointMethod Lorg/graalvm/nativeimage/c/function/CFunctionPointer;
9 22 7 cname Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
10 17 8 csignature Lorg/graalvm/nativeimage/c/type/CTypeConversion$CCharPointerHolder;
11 15 9 nativeMethod Lcom/oracle/svm/jni/nativeapi/JNINativeMethod;
Exception table:
from to target type
10 15 16 any
9 18 19 any
8 23 23 any
7 26 26 any
MethodParameters:
Name Flags
jni
bp
originalAddress
newAddressPtr
public static void onUnload();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: aconst_null
putstatic com.oracle.svm.agent.BreakpointInterceptor.installedBreakpoints:Ljava/util/Map;
1: aconst_null
putstatic com.oracle.svm.agent.BreakpointInterceptor.nativeBreakpoints:Ljava/util/Map;
2: aconst_null
putstatic com.oracle.svm.agent.BreakpointInterceptor.observedExplicitLoadClassCallSites:Ljava/util/concurrent/ConcurrentMap;
3: aconst_null
putstatic com.oracle.svm.agent.BreakpointInterceptor.traceWriter:Lcom/oracle/svm/agent/TraceWriter;
4: return
LocalVariableTable:
Start End Slot Name Signature
private static com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification brk(java.lang.String, java.lang.String, java.lang.String, com.oracle.svm.agent.BreakpointInterceptor$BreakpointHandler);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
dup
aload 0
aload 1
aload 2
aload 3
iconst_0
invokespecial com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;Z)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 className Ljava/lang/String;
0 1 1 methodName Ljava/lang/String;
0 1 2 signature Ljava/lang/String;
0 1 3 handler Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
MethodParameters:
Name Flags
className
methodName
signature
handler
private static com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification optionalBrk(java.lang.String, java.lang.String, java.lang.String, com.oracle.svm.agent.BreakpointInterceptor$BreakpointHandler);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;)Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointSpecification;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification
dup
aload 0
aload 1
aload 2
aload 3
iconst_1
invokespecial com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;Z)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 className Ljava/lang/String;
0 1 1 methodName Ljava/lang/String;
0 1 2 signature Ljava/lang/String;
0 1 3 handler Lcom/oracle/svm/agent/BreakpointInterceptor$BreakpointHandler;
MethodParameters:
Name Flags
className
methodName
signature
handler
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/svm/agent/BreakpointInterceptor;
private static java.lang.Boolean lambda$0();
descriptor: ()Ljava/lang/Boolean;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=0, args_size=0
0: getstatic java.lang.Boolean.FALSE:Ljava/lang/Boolean;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "BreakpointInterceptor.java"
NestMembers:
com.oracle.svm.agent.BreakpointInterceptor$AbstractBreakpoint com.oracle.svm.agent.BreakpointInterceptor$AbstractBreakpointSpecification com.oracle.svm.agent.BreakpointInterceptor$Breakpoint com.oracle.svm.agent.BreakpointInterceptor$BreakpointHandler com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator com.oracle.svm.agent.BreakpointInterceptor$MethodLocation com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification com.oracle.svm.agent.BreakpointInterceptor$ObjectFieldOffsetFunctionPointer com.oracle.svm.agent.BreakpointInterceptor$SerializationInfo
InnerClasses:
private abstract AbstractBreakpoint = com.oracle.svm.agent.BreakpointInterceptor$AbstractBreakpoint of com.oracle.svm.agent.BreakpointInterceptor
private abstract AbstractBreakpointSpecification = com.oracle.svm.agent.BreakpointInterceptor$AbstractBreakpointSpecification of com.oracle.svm.agent.BreakpointInterceptor
private final Breakpoint = com.oracle.svm.agent.BreakpointInterceptor$Breakpoint of com.oracle.svm.agent.BreakpointInterceptor
private abstract BreakpointHandler = com.oracle.svm.agent.BreakpointInterceptor$BreakpointHandler of com.oracle.svm.agent.BreakpointInterceptor
private BreakpointSpecification = com.oracle.svm.agent.BreakpointInterceptor$BreakpointSpecification of com.oracle.svm.agent.BreakpointInterceptor
CheckSumCalculator = com.oracle.svm.agent.BreakpointInterceptor$CheckSumCalculator of com.oracle.svm.agent.BreakpointInterceptor
private final MethodLocation = com.oracle.svm.agent.BreakpointInterceptor$MethodLocation of com.oracle.svm.agent.BreakpointInterceptor
private final NativeBreakpoint = com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpoint of com.oracle.svm.agent.BreakpointInterceptor
private NativeBreakpointSpecification = com.oracle.svm.agent.BreakpointInterceptor$NativeBreakpointSpecification of com.oracle.svm.agent.BreakpointInterceptor
private abstract ObjectFieldOffsetFunctionPointer = com.oracle.svm.agent.BreakpointInterceptor$ObjectFieldOffsetFunctionPointer of com.oracle.svm.agent.BreakpointInterceptor
private final SerializationInfo = com.oracle.svm.agent.BreakpointInterceptor$SerializationInfo of com.oracle.svm.agent.BreakpointInterceptor
public abstract CallStaticObjectMethodAFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$CallStaticObjectMethodAFunctionPointer 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 FromReflectedMethodFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$FromReflectedMethodFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
public abstract GetArrayLengthFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetArrayLengthFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
public abstract GetBooleanFieldFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetBooleanFieldFunctionPointer 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 GetObjectArrayElementFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetObjectArrayElementFunctionPointer 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 GetObjectFieldFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$GetObjectFieldFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
public abstract IsAssignableFromFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$IsAssignableFromFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
public abstract IsSameObjectFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$IsSameObjectFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
public abstract RegisterNativesFunctionPointer = com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes$RegisterNativesFunctionPointer of com.oracle.svm.jni.nativeapi.JNIFunctionPointerTypes
public final ConstantPoolException = com.oracle.svm.jvmtiagentbase.ConstantPoolTool$ConstantPoolException of com.oracle.svm.jvmtiagentbase.ConstantPoolTool
public MethodReference = com.oracle.svm.jvmtiagentbase.ConstantPoolTool$MethodReference of com.oracle.svm.jvmtiagentbase.ConstantPoolTool
public abstract CapabilitiesFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$CapabilitiesFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
public abstract DeallocateFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$DeallocateFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
public abstract GetBytecodesFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetBytecodesFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
public abstract GetClassLoaderFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetClassLoaderFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
public abstract GetConstantPoolFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetConstantPoolFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
public abstract GetJLocationFormatFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetJLocationFormatFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
public abstract GetLoadedClassesFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetLoadedClassesFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
public abstract GetLocalFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetLocalFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
public abstract GetMethodDeclaringClassFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetMethodDeclaringClassFunctionPointer 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 GetStackTraceFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$GetStackTraceFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
public abstract SetBreakpointFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$SetBreakpointFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
public abstract SetEventNotificationModeFunctionPointer = com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface$SetEventNotificationModeFunctionPointer of com.oracle.svm.jvmtiagentbase.jvmti.JvmtiInterface
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract CCharPointerHolder = org.graalvm.nativeimage.c.type.CTypeConversion$CCharPointerHolder of org.graalvm.nativeimage.c.type.CTypeConversion