class com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18 implements org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18
super_class: java.lang.Object
{
private final boolean val$analysis;
descriptor: Z
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
private final org.graalvm.compiler.api.replacements.SnippetReflectionProvider val$snippetReflection;
descriptor: Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(boolean, org.graalvm.compiler.api.replacements.SnippetReflectionProvider);
descriptor: (ZLorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 0: aload 0
iload 1
putfield com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18.val$analysis:Z
aload 0
aload 2
putfield com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18.val$snippetReflection:Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/hosted/snippets/SubstrateGraphBuilderPlugins$18;
MethodParameters:
Name Flags
val$analysis final
val$snippetReflection final
public boolean apply(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext, jdk.vm.ci.meta.ResolvedJavaMethod, org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin$Receiver, org.graalvm.compiler.nodes.ValueNode, org.graalvm.compiler.nodes.ValueNode);
descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=11, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18.val$analysis:Z
ifeq 12
1: aload 5
getstatic org.graalvm.compiler.nodes.spi.ArrayLengthProvider$FindLengthMode.SEARCH_ONLY:Lorg/graalvm/compiler/nodes/spi/ArrayLengthProvider$FindLengthMode;
aload 1
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getConstantReflection:()Ljdk/vm/ci/meta/ConstantReflectionProvider;
invokestatic org.graalvm.compiler.nodes.util.GraphUtil.arrayLength:(Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/spi/ArrayLengthProvider$FindLengthMode;Ljdk/vm/ci/meta/ConstantReflectionProvider;)Lorg/graalvm/compiler/nodes/ValueNode;
astore 6
start local 6 2: aload 4
invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
ifeq 12
aload 4
invokevirtual org.graalvm.compiler.nodes.ValueNode.isNullConstant:()Z
ifne 12
aload 6
ifnull 12
aload 6
invokevirtual org.graalvm.compiler.nodes.ValueNode.isConstant:()Z
ifeq 12
3: aload 0
getfield com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18.val$snippetReflection:Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
ldc Ljava/lang/Class;
aload 4
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface org.graalvm.compiler.api.replacements.SnippetReflectionProvider.asObject:(Ljava/lang/Class;Ljdk/vm/ci/meta/JavaConstant;)Ljava/lang/Object;
checkcast java.lang.Class
astore 7
start local 7 4: aload 6
invokevirtual org.graalvm.compiler.nodes.ValueNode.asJavaConstant:()Ljdk/vm/ci/meta/JavaConstant;
invokeinterface jdk.vm.ci.meta.JavaConstant.asInt:()I
istore 8
start local 8 5: aload 1
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
aload 7
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
checkcast com.oracle.graal.pointsto.meta.AnalysisType
astore 9
start local 9 6: iconst_0
istore 10
start local 10 7: goto 11
8: StackMap locals: com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18 org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin$Receiver org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode java.lang.Class int com.oracle.graal.pointsto.meta.AnalysisType int
StackMap stack:
aload 9
invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.getArrayClass:()Lcom/oracle/graal/pointsto/meta/AnalysisType;
astore 9
9: aload 9
aload 4
invokevirtual com.oracle.graal.pointsto.meta.AnalysisType.registerAsAllocated:(Lorg/graalvm/compiler/graph/Node;)V
10: iinc 10 1
StackMap locals:
StackMap stack:
11: iload 10
iload 8
if_icmplt 8
end local 10 end local 9 end local 8 end local 7 end local 6 12: StackMap locals: com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18 org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin$Receiver org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.ValueNode
StackMap stack:
iconst_0
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 13 0 this Lcom/oracle/svm/hosted/snippets/SubstrateGraphBuilderPlugins$18;
0 13 1 b Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;
0 13 2 targetMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 13 3 receiver Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
0 13 4 clazzNode Lorg/graalvm/compiler/nodes/ValueNode;
0 13 5 dimensionsNode Lorg/graalvm/compiler/nodes/ValueNode;
2 12 6 dimensionCountNode Lorg/graalvm/compiler/nodes/ValueNode;
4 12 7 clazz Ljava/lang/Class<*>;
5 12 8 dimensionCount I
6 12 9 type Lcom/oracle/graal/pointsto/meta/AnalysisType;
7 12 10 i I
MethodParameters:
Name Flags
b
targetMethod
receiver
clazzNode
dimensionsNode
}
SourceFile: "SubstrateGraphBuilderPlugins.java"
EnclosingMethod: com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerArrayPlugins:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins;Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;Z)V
NestHost: com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins
InnerClasses:
com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$18
public abstract Receiver = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin$Receiver of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin
public final FindLengthMode = org.graalvm.compiler.nodes.spi.ArrayLengthProvider$FindLengthMode of org.graalvm.compiler.nodes.spi.ArrayLengthProvider