public class org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
super_class: java.lang.Object
{
private final java.util.Map<jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin> resolvedRegistrations;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;>;
private final java.util.Map<java.lang.String, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins> registrations;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$ClassPlugins;>;
private volatile java.util.List<java.lang.Runnable> deferredRegistrations;
descriptor: Ljava/util/List;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
Signature: Ljava/util/List<Ljava/lang/Runnable;>;
private volatile org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins lateRegistrations;
descriptor: Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
protected final org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins parent;
descriptor: Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
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 org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void defer(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.$assertionsDisabled:Z
ifne 1
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.deferredRegistrations:Ljava/util/List;
ifnonnull 1
new java.lang.AssertionError
dup
ldc "registration is closed"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.deferredRegistrations:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 3 1 deferrable Ljava/lang/Runnable;
MethodParameters:
Name Flags
deferrable
org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding put(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin, boolean, boolean, java.lang.reflect.Type, java.lang.String, java.lang.reflect.Type[]);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;ZZLjava/lang/reflect/Type;Ljava/lang/String;[Ljava/lang/reflect/Type;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;
flags: (0x0080) ACC_VARARGS
Code:
stack=6, locals=10, 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 org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.$assertionsDisabled:Z
ifne 1
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.resolvedRegistrations:Ljava/util/Map;
ifnull 1
new java.lang.AssertionError
dup
ldc "registration is closed"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.lang.reflect.Type.getTypeName:()Ljava/lang/String;
invokestatic jdk.vm.ci.meta.MetaUtil.toInternalName:(Ljava/lang/String;)Ljava/lang/String;
astore 7
start local 7 2: getstatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.$assertionsDisabled:Z
ifne 3
iload 2
ifne 3
aload 6
iconst_0
aaload
aload 4
if_acmpeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals: java.lang.String
StackMap stack:
getstatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.$assertionsDisabled:Z
ifne 4
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.deferredRegistrations:Ljava/util/List;
ifnonnull 4
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "initial registration is closed - use "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateRegistration;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " for late registrations"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.registrations:Ljava/util/Map;
aload 7
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins
astore 8
start local 8 5: aload 8
ifnonnull 8
6: new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins
dup
invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins.<init>:()V
astore 8
7: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.registrations:Ljava/util/Map;
aload 7
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins
StackMap stack:
new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding
dup
aload 1
iload 2
aload 5
aload 6
invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;ZLjava/lang/String;[Ljava/lang/reflect/Type;)V
astore 9
start local 9 9: aload 8
aload 9
iload 3
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins.register:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;Z)V
10: aload 9
areturn
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 11 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 11 1 plugin Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
0 11 2 isStatic Z
0 11 3 allowOverwrite Z
0 11 4 declaringClass Ljava/lang/reflect/Type;
0 11 5 name Ljava/lang/String;
0 11 6 argumentTypes [Ljava/lang/reflect/Type;
2 11 7 internalName Ljava/lang/String;
5 11 8 classPlugins Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$ClassPlugins;
9 11 9 binding Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;
MethodParameters:
Name Flags
plugin
isStatic
allowOverwrite
declaringClass
name
argumentTypes
org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin get(jdk.vm.ci.meta.ResolvedJavaMethod);
descriptor: (Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
flags: (0x0000)
Code:
stack=2, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.resolvedRegistrations:Ljava/util/Map;
ifnull 2
1: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.resolvedRegistrations:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.isBridge:()Z
ifne 17
3: aload 1
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
astore 2
start local 2 4: aload 0
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.flushDeferrables:()V
5: aload 2
invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getName:()Ljava/lang/String;
astore 3
start local 3 6: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.registrations:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins
astore 4
start local 4 7: aconst_null
astore 5
start local 5 8: aload 4
ifnull 10
9: aload 4
aload 1
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins.get:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
astore 5
10: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins jdk.vm.ci.meta.ResolvedJavaMethod jdk.vm.ci.meta.ResolvedJavaType java.lang.String org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin
StackMap stack:
aload 5
ifnonnull 14
11: aload 0
aload 3
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.findLateClassPlugins:(Ljava/lang/String;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
astore 6
start local 6 12: aload 6
ifnull 14
13: aload 6
aload 1
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins.get:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
astore 5
end local 6 14: StackMap locals:
StackMap stack:
aload 5
ifnull 17
15: aload 0
aload 2
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.canBeIntrinsified:(Ljdk/vm/ci/meta/ResolvedJavaType;)Z
ifeq 17
16: aload 5
areturn
end local 5 end local 4 end local 3 end local 2 17: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins jdk.vm.ci.meta.ResolvedJavaMethod
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 18 1 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
4 17 2 declaringClass Ljdk/vm/ci/meta/ResolvedJavaType;
6 17 3 internalName Ljava/lang/String;
7 17 4 classPlugins Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$ClassPlugins;
8 17 5 res Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
12 14 6 lcp Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
MethodParameters:
Name Flags
method
protected boolean canBeIntrinsified(jdk.vm.ci.meta.ResolvedJavaType);
descriptor: (Ljdk/vm/ci/meta/ResolvedJavaType;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 1 1 declaringClass Ljdk/vm/ci/meta/ResolvedJavaType;
MethodParameters:
Name Flags
declaringClass
org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins findLateClassPlugins(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
flags: (0x0000)
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.lateRegistrations:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
astore 2
start local 2 1: goto 5
2: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins
StackMap stack:
aload 2
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins.className:Ljava/lang/String;
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: aload 2
areturn
4: StackMap locals:
StackMap stack:
aload 2
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins.next:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
astore 2
StackMap locals:
StackMap stack:
5: aload 2
ifnonnull 2
end local 2 6: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 7 1 internalClassName Ljava/lang/String;
1 6 2 lcp Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
MethodParameters:
Name Flags
internalClassName
private void flushDeferrables();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.deferredRegistrations:Ljava/util/List;
ifnull 12
1: aload 0
dup
astore 1
monitorenter
2: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.deferredRegistrations:Ljava/util/List;
ifnull 8
3: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.deferredRegistrations:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 6
StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins top java.util.Iterator
StackMap stack:
4: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Runnable
astore 2
start local 2 5: aload 2
invokeinterface java.lang.Runnable.run:()V
end local 2 6: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: aload 0
aconst_null
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.deferredRegistrations:Ljava/util/List;
8: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
StackMap stack:
aload 1
monitorexit
9: goto 12
StackMap locals:
StackMap stack: java.lang.Throwable
10: aload 1
monitorexit
11: athrow
12: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
5 6 2 deferrable Ljava/lang/Runnable;
Exception table:
from to target type
2 9 10 any
10 11 10 any
synchronized void registerLate(java.lang.reflect.Type, java.util.List<org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding>);
descriptor: (Ljava/lang/reflect/Type;Ljava/util/List;)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface java.lang.reflect.Type.getTypeName:()Ljava/lang/String;
invokestatic jdk.vm.ci.meta.MetaUtil.toInternalName:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: getstatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.$assertionsDisabled:Z
ifne 2
aload 0
aload 3
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.findLateClassPlugins:(Ljava/lang/String;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
ifnull 2
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Cannot have more than one late registration of invocation plugins for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals: java.lang.String
StackMap stack:
new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins
dup
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.lateRegistrations:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
aload 3
invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;Ljava/lang/String;)V
astore 4
start local 4 3: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 6
StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.lang.reflect.Type java.util.List java.lang.String org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins top java.util.Iterator
StackMap stack:
4: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding
astore 5
start local 5 5: aload 4
aload 5
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins.register:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;)V
end local 5 6: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: aload 0
aload 4
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.lateRegistrations:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 9 1 declaringType Ljava/lang/reflect/Type;
0 9 2 bindings Ljava/util/List<Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;>;
1 9 3 internalName Ljava/lang/String;
3 9 4 lateClassPlugins Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
5 6 5 b Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;
Signature: (Ljava/lang/reflect/Type;Ljava/util/List<Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;>;)V
MethodParameters:
Name Flags
declaringType
bindings
private synchronized boolean closeLateRegistrations();
descriptor: ()Z
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.lateRegistrations:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
ifnull 1
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.lateRegistrations:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins.className:Ljava/lang/String;
ldc "-----"
if_acmpeq 2
1: StackMap locals:
StackMap stack:
aload 0
new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins
dup
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.lateRegistrations:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
ldc "-----"
invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;Ljava/lang/String;)V
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.lateRegistrations:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
2: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
public void closeRegistration();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.$assertionsDisabled:Z
ifne 1
aload 0
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.closeLateRegistrations:()Z
ifne 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.flushDeferrables:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
public boolean isEmpty();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.resolvedRegistrations:Ljava/util/Map;
ifnull 2
1: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.resolvedRegistrations:Ljava/util/Map;
invokeinterface java.util.Map.isEmpty:()Z
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.registrations:Ljava/util/Map;
invokeinterface java.util.Map.size:()I
ifne 3
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.lateRegistrations:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
ifnonnull 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.<init>:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
public void <init>(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.deferredRegistrations:Ljava/util/List;
2: aload 1
astore 2
start local 2 3: aload 0
aload 2
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parent:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
4: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.registrations:Ljava/util/Map;
5: aload 0
aconst_null
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.resolvedRegistrations:Ljava/util/Map;
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 7 1 parent Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
3 7 2 p Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
MethodParameters:
Name Flags
parent
public void <init>(java.util.Map<jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin>, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins);
descriptor: (Ljava/util/Map;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.deferredRegistrations:Ljava/util/List;
2: aload 0
aload 2
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parent:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
3: aload 0
aconst_null
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.registrations:Ljava/util/Map;
4: aload 0
aconst_null
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.deferredRegistrations:Ljava/util/List;
5: new java.util.HashMap
dup
aload 1
invokeinterface java.util.Map.size:()I
invokespecial java.util.HashMap.<init>:(I)V
astore 3
start local 3 6: aload 1
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 9
StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.util.Map org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.util.Map top java.util.Iterator
StackMap stack:
7: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 4
start local 4 8: aload 3
aload 4
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast jdk.vm.ci.meta.ResolvedJavaMethod
aload 4
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 4 9: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
10: aload 0
aload 3
putfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.resolvedRegistrations:Ljava/util/Map;
11: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 12 1 plugins Ljava/util/Map<Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;>;
0 12 2 parent Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
6 12 3 map Ljava/util/Map<Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;>;
8 9 4 entry Ljava/util/Map$Entry<Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;>;
Signature: (Ljava/util/Map<Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;>;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;)V
MethodParameters:
Name Flags
plugins
parent
protected void register(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin, boolean, boolean, java.lang.reflect.Type, java.lang.String, java.lang.reflect.Type[]);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;ZZLjava/lang/reflect/Type;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
Code:
stack=7, locals=9, 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: aload 6
arraylength
ifeq 1
aload 6
iconst_0
aaload
ldc Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
if_acmpne 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: istore 7
start local 7 3: iload 7
ifne 5
4: aload 6
iconst_0
aload 4
aastore
5: StackMap locals: int
StackMap stack:
aload 0
aload 1
iload 7
iload 3
aload 4
aload 5
aload 6
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.put:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;ZZLjava/lang/reflect/Type;Ljava/lang/String;[Ljava/lang/reflect/Type;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;
astore 8
start local 8 6: getstatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.$assertionsDisabled:Z
ifne 7
aload 0
aload 4
aload 8
invokestatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Checks.check:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Ljava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;)Z
ifne 7
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
7: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding
StackMap stack:
getstatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.$assertionsDisabled:Z
ifne 8
iload 2
aload 4
aload 8
invokestatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Checks.checkResolvable:(ZLjava/lang/reflect/Type;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;)Z
ifne 8
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
8: StackMap locals:
StackMap stack:
return
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 9 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 9 1 plugin Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
0 9 2 isOptional Z
0 9 3 allowOverwrite Z
0 9 4 declaringClass Ljava/lang/reflect/Type;
0 9 5 name Ljava/lang/String;
0 9 6 argumentTypes [Ljava/lang/reflect/Type;
3 9 7 isStatic Z
6 9 8 binding Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;
MethodParameters:
Name Flags
plugin
isOptional
allowOverwrite
declaringClass
name
argumentTypes
public void register(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin, java.lang.reflect.Type, java.lang.String, java.lang.reflect.Type[]);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;Ljava/lang/reflect/Type;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=7, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
iconst_0
iconst_0
aload 2
aload 3
aload 4
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.register:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;ZZLjava/lang/reflect/Type;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 2 1 plugin Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
0 2 2 declaringClass Ljava/lang/reflect/Type;
0 2 3 name Ljava/lang/String;
0 2 4 argumentTypes [Ljava/lang/reflect/Type;
MethodParameters:
Name Flags
plugin
declaringClass
name
argumentTypes
public void register(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin, java.lang.String, java.lang.String, java.lang.reflect.Type[]);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=7, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
iconst_0
iconst_0
new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$OptionalLazySymbol
dup
aload 2
invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$OptionalLazySymbol.<init>:(Ljava/lang/String;)V
aload 3
aload 4
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.register:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;ZZLjava/lang/reflect/Type;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 2 1 plugin Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
0 2 2 declaringClass Ljava/lang/String;
0 2 3 name Ljava/lang/String;
0 2 4 argumentTypes [Ljava/lang/reflect/Type;
MethodParameters:
Name Flags
plugin
declaringClass
name
argumentTypes
public void registerOptional(org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin, java.lang.reflect.Type, java.lang.String, java.lang.reflect.Type[]);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;Ljava/lang/reflect/Type;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=7, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
iconst_1
iconst_0
aload 2
aload 3
aload 4
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.register:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;ZZLjava/lang/reflect/Type;Ljava/lang/String;[Ljava/lang/reflect/Type;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 2 1 plugin Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
0 2 2 declaringClass Ljava/lang/reflect/Type;
0 2 3 name Ljava/lang/String;
0 2 4 argumentTypes [Ljava/lang/reflect/Type;
MethodParameters:
Name Flags
plugin
declaringClass
name
argumentTypes
public org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin lookupInvocation(jdk.vm.ci.meta.ResolvedJavaMethod);
descriptor: (Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parent:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
ifnull 4
1: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parent:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
aload 1
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.lookupInvocation:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
astore 2
start local 2 2: aload 2
ifnull 4
3: aload 2
areturn
end local 2 4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.get:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 5 1 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
2 4 2 plugin Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
MethodParameters:
Name Flags
method
public java.util.Map<java.lang.String, java.util.List<org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding>> getBindings(boolean);
descriptor: (Z)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=2
start local 0 start local 1 0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 2
start local 2 1: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parent:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
ifnull 3
iload 1
ifeq 3
2: aload 2
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parent:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
iconst_1
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.getBindings:(Z)Ljava/util/Map;
invokeinterface java.util.Map.putAll:(Ljava/util/Map;)V
3: StackMap locals: java.util.Map
StackMap stack:
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.resolvedRegistrations:Ljava/util/Map;
ifnull 16
4: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.resolvedRegistrations:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 14
StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins int java.util.Map top java.util.Iterator
StackMap stack:
5: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 3
start local 3 6: aload 3
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast jdk.vm.ci.meta.ResolvedJavaMethod
astore 5
start local 5 7: aload 3
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin
astore 6
start local 6 8: aload 5
invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getName:()Ljava/lang/String;
astore 7
start local 7 9: aload 2
aload 7
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
astore 8
start local 8 10: aload 8
ifnonnull 13
11: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 8
12: aload 2
aload 7
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
13: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins int java.util.Map java.util.Map$Entry java.util.Iterator jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin java.lang.String java.util.List
StackMap stack:
aload 8
new org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding
dup
aload 5
aload 6
invokespecial org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding.<init>:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 end local 7 end local 6 end local 5 end local 3 14: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins int java.util.Map top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
15: goto 29
16: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins int java.util.Map
StackMap stack:
aload 0
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.flushDeferrables:()V
17: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.registrations:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 22
StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins int java.util.Map top java.util.Iterator
StackMap stack:
18: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 3
start local 3 19: aload 3
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 20: aload 3
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins
astore 6
start local 6 21: aload 2
aload 5
aload 6
invokestatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.collectBindingsTo:(Ljava/util/Map;Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$ClassPlugins;)V
end local 6 end local 5 end local 3 22: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 18
23: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.lateRegistrations:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
astore 3
start local 3 24: goto 28
25: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins int java.util.Map org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins
StackMap stack:
aload 3
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins.className:Ljava/lang/String;
astore 4
start local 4 26: aload 2
aload 4
aload 3
invokestatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.collectBindingsTo:(Ljava/util/Map;Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$ClassPlugins;)V
end local 4 27: aload 3
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins.next:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
astore 3
StackMap locals:
StackMap stack:
28: aload 3
ifnonnull 25
end local 3 29: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 30 1 includeParents Z
1 30 2 res Ljava/util/Map<Ljava/lang/String;Ljava/util/List<Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;>;>;
6 14 3 e Ljava/util/Map$Entry<Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;>;
7 14 5 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
8 14 6 plugin Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
9 14 7 type Ljava/lang/String;
10 14 8 bindings Ljava/util/List<Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;>;
19 22 3 e Ljava/util/Map$Entry<Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$ClassPlugins;>;
20 22 5 type Ljava/lang/String;
21 22 6 cp Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$ClassPlugins;
24 29 3 lcp Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$LateClassPlugins;
26 27 4 type Ljava/lang/String;
Signature: (Z)Ljava/util/Map<Ljava/lang/String;Ljava/util/List<Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;>;>;
MethodParameters:
Name Flags
includeParents
private static void collectBindingsTo(java.util.Map<java.lang.String, java.util.List<org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding>>, java.lang.String, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins);
descriptor: (Ljava/util/Map;Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$ClassPlugins;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins.bindings:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 11
StackMap locals: java.util.Map java.lang.String org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins top java.util.Iterator
StackMap stack:
1: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 3
start local 3 2: aload 0
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
astore 5
start local 5 3: aload 5
ifnonnull 6
4: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 5
5: aload 0
aload 1
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: StackMap locals: java.util.Map java.lang.String org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins java.util.Map$Entry java.util.Iterator java.util.List
StackMap stack:
aload 3
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding
astore 6
start local 6 7: goto 10
8: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding
StackMap stack:
aload 5
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
9: aload 6
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding.next:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;
astore 6
StackMap locals:
StackMap stack:
10: aload 6
ifnonnull 8
end local 6 end local 5 end local 3 11: StackMap locals: java.util.Map java.lang.String org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 res Ljava/util/Map<Ljava/lang/String;Ljava/util/List<Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;>;>;
0 13 1 type Ljava/lang/String;
0 13 2 cp Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$ClassPlugins;
2 11 3 e Ljava/util/Map$Entry<Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;>;
3 11 5 bindings Ljava/util/List<Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;>;
7 11 6 b Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;
Signature: (Ljava/util/Map<Ljava/lang/String;Ljava/util/List<Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;>;>;Ljava/lang/String;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$ClassPlugins;)V
MethodParameters:
Name Flags
res
type
cp
public org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins getParent();
descriptor: ()Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parent:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 1: aload 0
iconst_0
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.getBindings:(Z)Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 8
StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.util.List top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 2
start local 2 3: aload 2
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
iconst_1
iconst_0
invokestatic jdk.vm.ci.meta.MetaUtil.internalNameToJava:(Ljava/lang/String;ZZ)Ljava/lang/String;
astore 4
start local 4 4: aload 2
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.util.List
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 7
StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.util.List java.util.Map$Entry java.util.Iterator java.lang.String top java.util.Iterator
StackMap stack:
5: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding
astore 5
start local 5 6: aload 1
new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 5 7: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
end local 4 end local 2 8: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.util.List top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
9: aload 1
invokestatic java.util.Collections.sort:(Ljava/util/List;)V
10: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 11: ldc "%n"
iconst_0
anewarray java.lang.Object
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 3
start local 3 12: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 17
StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.util.List java.lang.StringBuilder java.lang.String top java.util.Iterator
StackMap stack:
13: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 14: aload 2
invokevirtual java.lang.StringBuilder.length:()I
ifeq 16
15: aload 2
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
16: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.util.List java.lang.StringBuilder java.lang.String java.lang.String java.util.Iterator
StackMap stack:
aload 2
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 4 17: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.util.List java.lang.StringBuilder java.lang.String top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 13
18: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parent:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
ifnull 22
19: aload 2
invokevirtual java.lang.StringBuilder.length:()I
ifeq 21
20: aload 2
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
21: StackMap locals: org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins java.util.List java.lang.StringBuilder java.lang.String
StackMap stack:
aload 2
ldc "// parent"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parent:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
22: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
1 23 1 all Ljava/util/List<Ljava/lang/String;>;
3 8 2 e Ljava/util/Map$Entry<Ljava/lang/String;Ljava/util/List<Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;>;>;
4 8 4 c Ljava/lang/String;
6 7 5 b Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;
11 23 2 buf Ljava/lang/StringBuilder;
12 23 3 nl Ljava/lang/String;
14 17 4 s Ljava/lang/String;
public void checkNewNodes(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin, org.graalvm.compiler.graph.iterators.NodeIterable<org.graalvm.compiler.graph.Node>);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;Lorg/graalvm/compiler/graph/iterators/NodeIterable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parent:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
ifnull 2
1: aload 0
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parent:Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
aload 1
aload 2
aload 3
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.checkNewNodes:(Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;Lorg/graalvm/compiler/graph/iterators/NodeIterable;)V
2: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;
0 3 1 b Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;
0 3 2 plugin Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;
0 3 3 newNodes Lorg/graalvm/compiler/graph/iterators/NodeIterable<Lorg/graalvm/compiler/graph/Node;>;
Signature: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin;Lorg/graalvm/compiler/graph/iterators/NodeIterable<Lorg/graalvm/compiler/graph/Node;>;)V
MethodParameters:
Name Flags
b
plugin
newNodes
public static java.lang.Class<?> resolveClass(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: invokestatic java.lang.ClassLoader.getSystemClassLoader:()Ljava/lang/ClassLoader;
astore 2
start local 2 1: aload 0
iconst_0
aload 2
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
2: areturn
end local 2 3: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
pop
4: iload 1
ifeq 6
5: aconst_null
areturn
6: StackMap locals:
StackMap stack:
new org.graalvm.compiler.debug.GraalError
dup
new java.lang.StringBuilder
dup
ldc "Could not resolve type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 className Ljava/lang/String;
0 7 1 optional Z
1 3 2 cl Ljava/lang/ClassLoader;
Exception table:
from to target type
0 2 3 Class java.lang.ClassNotFoundException
Signature: (Ljava/lang/String;Z)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
className
optional
public static java.lang.Class<?> resolveType(java.lang.reflect.Type, boolean);
descriptor: (Ljava/lang/reflect/Type;Z)Ljava/lang/Class;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
instanceof java.lang.Class
ifeq 2
1: aload 0
checkcast java.lang.Class
areturn
2: StackMap locals:
StackMap stack:
aload 0
instanceof org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$OptionalLazySymbol
ifeq 4
3: aload 0
checkcast org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$OptionalLazySymbol
invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$OptionalLazySymbol.resolve:()Ljava/lang/Class;
areturn
4: StackMap locals:
StackMap stack:
aload 0
invokeinterface java.lang.reflect.Type.getTypeName:()Ljava/lang/String;
iload 1
invokestatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.resolveClass:(Ljava/lang/String;Z)Ljava/lang/Class;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 type Ljava/lang/reflect/Type;
0 5 1 optional Z
Signature: (Ljava/lang/reflect/Type;Z)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
type
optional
private static java.util.List<java.lang.String> toInternalTypeNames(java.lang.Class<?>[]);
descriptor: ([Ljava/lang/Class;)Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
arraylength
anewarray java.lang.String
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: java.lang.String[] int
StackMap stack:
aload 1
iload 2
aload 0
iload 2
aaload
invokevirtual java.lang.Class.getTypeName:()Ljava/lang/String;
invokestatic jdk.vm.ci.meta.MetaUtil.toInternalName:(Ljava/lang/String;)Ljava/lang/String;
aastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
arraylength
if_icmplt 3
end local 2 6: aload 1
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 types [Ljava/lang/Class;
1 7 1 res [Ljava/lang/String;
2 6 2 i I
Signature: ([Ljava/lang/Class<*>;)Ljava/util/List<Ljava/lang/String;>;
MethodParameters:
Name Flags
types
public static java.lang.reflect.Method resolveMethod(java.lang.Class<?>, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding);
descriptor: (Ljava/lang/Class;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;)Ljava/lang/reflect/Method;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=8, args_size=2
start local 0 start local 1 0: aload 1
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding.name:Ljava/lang/String;
ldc "<init>"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Class.getDeclaredMethods:()[Ljava/lang/reflect/Method;
astore 2
start local 2 3: aload 1
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding.argumentsDescriptor:Ljava/lang/String;
invokestatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parseParameters:(Ljava/lang/String;)Ljava/util/List;
astore 3
start local 3 4: iconst_0
istore 4
start local 4 5: goto 25
6: StackMap locals: java.lang.reflect.Method[] java.util.List int
StackMap stack:
aload 2
iload 4
aaload
astore 5
start local 5 7: aload 1
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding.isStatic:Z
aload 5
invokevirtual java.lang.reflect.Method.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
if_icmpne 24
aload 5
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
aload 1
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding.name:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 24
8: aload 3
aload 5
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
invokestatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.toInternalTypeNames:([Ljava/lang/Class;)Ljava/util/List;
invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
ifeq 24
9: iload 4
iconst_1
iadd
istore 6
start local 6 10: goto 22
11: StackMap locals: java.lang.reflect.Method int
StackMap stack:
aload 2
iload 6
aaload
astore 7
start local 7 12: aload 1
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding.isStatic:Z
aload 7
invokevirtual java.lang.reflect.Method.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isStatic:(I)Z
if_icmpne 21
aload 7
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
aload 1
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding.name:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 21
13: aload 3
aload 7
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
invokestatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.toInternalTypeNames:([Ljava/lang/Class;)Ljava/util/List;
invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
ifeq 21
14: aload 5
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
aload 7
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 17
15: aload 7
astore 5
16: goto 21
17: StackMap locals: java.lang.reflect.Method
StackMap stack:
aload 7
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
aload 5
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 21
18: new java.lang.NoSuchMethodError
dup
19: ldc "Found 2 methods with same name and parameter types but unrelated return types:%n %s%n %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
dup
iconst_1
aload 7
aastore
20: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.NoSuchMethodError.<init>:(Ljava/lang/String;)V
athrow
end local 7 21: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
22: iload 6
aload 2
arraylength
if_icmplt 11
end local 6 23: aload 5
areturn
end local 5 24: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
25: iload 4
aload 2
arraylength
if_icmplt 6
end local 4 26: aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 declaringClass Ljava/lang/Class<*>;
0 27 1 binding Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;
3 27 2 methods [Ljava/lang/reflect/Method;
4 27 3 parameterTypeNames Ljava/util/List<Ljava/lang/String;>;
5 26 4 i I
7 24 5 m Ljava/lang/reflect/Method;
10 23 6 j I
12 21 7 other Ljava/lang/reflect/Method;
Signature: (Ljava/lang/Class<*>;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;)Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
declaringClass
binding
public static java.lang.reflect.Constructor<?> resolveConstructor(java.lang.Class<?>, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding);
descriptor: (Ljava/lang/Class;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;)Ljava/lang/reflect/Constructor;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 1
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding.name:Ljava/lang/String;
ldc "<init>"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Class.getDeclaredConstructors:()[Ljava/lang/reflect/Constructor;
astore 2
start local 2 3: aload 1
getfield org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding.argumentsDescriptor:Ljava/lang/String;
invokestatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.parseParameters:(Ljava/lang/String;)Ljava/util/List;
astore 3
start local 3 4: iconst_0
istore 4
start local 4 5: goto 10
6: StackMap locals: java.lang.reflect.Constructor[] java.util.List int
StackMap stack:
aload 2
iload 4
aaload
astore 5
start local 5 7: aload 3
aload 5
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
invokestatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.toInternalTypeNames:([Ljava/lang/Class;)Ljava/util/List;
invokeinterface java.util.List.equals:(Ljava/lang/Object;)Z
ifeq 9
8: aload 5
areturn
end local 5 9: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
10: iload 4
aload 2
arraylength
if_icmplt 6
end local 4 11: aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 declaringClass Ljava/lang/Class<*>;
0 12 1 binding Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;
3 12 2 constructors [Ljava/lang/reflect/Constructor;
4 12 3 parameterTypeNames Ljava/util/List<Ljava/lang/String;>;
5 11 4 i I
7 9 5 c Ljava/lang/reflect/Constructor<*>;
Signature: (Ljava/lang/Class<*>;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Binding;)Ljava/lang/reflect/Constructor<*>;
MethodParameters:
Name Flags
declaringClass
binding
private static java.util.List<java.lang.String> parseParameters(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/List;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=7, args_size=1
start local 0 0: getstatic org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins.$assertionsDisabled:Z
ifne 2
aload 0
ldc "("
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 1
aload 0
ldc ")"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 2
StackMap locals:
StackMap stack:
1: new java.lang.AssertionError
dup
aload 0
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
2: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 3: iconst_1
istore 2
start local 2 4: aload 0
invokevirtual java.lang.String.length:()I
iconst_1
isub
istore 3
start local 3 5: goto 18
6: StackMap locals: java.util.List int int
StackMap stack:
iload 2
istore 5
start local 5 7: StackMap locals: java.lang.String java.util.List int int top int
StackMap stack:
aload 0
iload 2
iinc 2 1
invokevirtual java.lang.String.charAt:(I)C
istore 4
start local 4 8: iload 4
bipush 91
if_icmpeq 7
9: iload 4
tableswitch { // 66 - 90
66: 15
67: 15
68: 15
69: 16
70: 15
71: 16
72: 16
73: 15
74: 15
75: 16
76: 10
77: 16
78: 16
79: 16
80: 16
81: 16
82: 16
83: 15
84: 16
85: 16
86: 15
87: 16
88: 16
89: 16
90: 15
default: 16
}
10: StackMap locals: java.lang.String java.util.List int int int int
StackMap stack:
aload 0
bipush 59
iload 2
invokevirtual java.lang.String.indexOf:(II)I
istore 6
start local 6 11: iload 6
iconst_m1
if_icmpne 13
12: new org.graalvm.compiler.debug.GraalError
dup
ldc "Invalid object type at index %d in signature: %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
aastore
invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
athrow
13: StackMap locals: int
StackMap stack:
iload 6
iconst_1
iadd
istore 2
14: goto 17
end local 6 15: StackMap locals:
StackMap stack:
goto 17
16: StackMap locals:
StackMap stack:
new org.graalvm.compiler.debug.GraalError
dup
ldc "Invalid character at index %d in signature: %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
aastore
invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
athrow
17: StackMap locals:
StackMap stack:
aload 1
aload 0
iload 5
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 5 end local 4 18: StackMap locals:
StackMap stack:
iload 2
iload 3
if_icmpne 6
19: aload 1
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 argumentsDescriptor Ljava/lang/String;
3 20 1 res Ljava/util/List<Ljava/lang/String;>;
4 20 2 cur I
5 20 3 end I
8 18 4 first C
7 18 5 start I
11 15 6 endObject I
Signature: (Ljava/lang/String;)Ljava/util/List<Ljava/lang/String;>;
MethodParameters:
Name Flags
argumentsDescriptor
}
SourceFile: "InvocationPlugins.java"
NestMembers:
org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Checks org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$InvocationPluginReceiver org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateRegistration org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$OptionalLazySymbol org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map
public abstract Receiver = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin$Receiver of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin
public Binding = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Binding of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
private Checks = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Checks of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
ClassPlugins = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$ClassPlugins of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
public InvocationPluginReceiver = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$InvocationPluginReceiver of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
LateClassPlugins = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateClassPlugins of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
public LateRegistration = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$LateRegistration of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
OptionalLazySymbol = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$OptionalLazySymbol of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins
public Registration = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins