class com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$31 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$31
super_class: java.lang.Object
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 // com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$31 this
0: .line 820
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$31 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/svm/hosted/snippets/SubstrateGraphBuilderPlugins$31;
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=8, locals=9, args_size=6
start local 0 // com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$31 this
start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
start local 2 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
start local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin$Receiver receiver
start local 4 // org.graalvm.compiler.nodes.ValueNode object
start local 5 // org.graalvm.compiler.nodes.ValueNode javaClass
0: .line 823
aload 1 /* b */
aload 5 /* javaClass */
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.nullCheckedValue:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
astore 6 /* nullCheckedClass */
start local 6 // org.graalvm.compiler.nodes.ValueNode nullCheckedClass
1: .line 824
aload 1 /* b */
aload 1 /* b */
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
aload 1 /* b */
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getConstantReflection:()Ljdk/vm/ci/meta/ConstantReflectionProvider;
aload 6 /* nullCheckedClass */
aload 4 /* object */
iconst_1
iconst_1
invokestatic org.graalvm.compiler.nodes.java.InstanceOfDynamicNode.create:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ConstantReflectionProvider;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/ValueNode;ZZ)Lorg/graalvm/compiler/nodes/LogicNode;
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.append:(Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
checkcast org.graalvm.compiler.nodes.LogicNode
astore 7 /* condition */
start local 7 // org.graalvm.compiler.nodes.LogicNode condition
2: .line 825
aload 1 /* b */
aload 7 /* condition */
iconst_1
getstatic org.graalvm.compiler.nodes.extended.BytecodeExceptionNode$BytecodeExceptionKind.CLASS_CAST:Lorg/graalvm/compiler/nodes/extended/BytecodeExceptionNode$BytecodeExceptionKind;
iconst_2
anewarray org.graalvm.compiler.nodes.ValueNode
dup
iconst_0
aload 4 /* object */
aastore
dup
iconst_1
aload 6 /* nullCheckedClass */
aastore
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.emitBytecodeExceptionCheck:(Lorg/graalvm/compiler/nodes/LogicNode;ZLorg/graalvm/compiler/nodes/extended/BytecodeExceptionNode$BytecodeExceptionKind;[Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/AbstractBeginNode;
astore 8 /* guard */
start local 8 // org.graalvm.compiler.nodes.AbstractBeginNode guard
3: .line 826
aload 8 /* guard */
ifnull 6
4: .line 827
aload 1 /* b */
getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
aload 1 /* b */
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getAssumptions:()Ljdk/vm/ci/meta/Assumptions;
aload 1 /* b */
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.getConstantReflection:()Ljdk/vm/ci/meta/ConstantReflectionProvider;
aload 4 /* object */
aload 8 /* guard */
aload 6 /* nullCheckedClass */
iconst_1
invokestatic org.graalvm.compiler.nodes.DynamicPiNode.create:(Ljdk/vm/ci/meta/Assumptions;Ljdk/vm/ci/meta/ConstantReflectionProvider;Lorg/graalvm/compiler/nodes/ValueNode;Lorg/graalvm/compiler/nodes/extended/GuardingNode;Lorg/graalvm/compiler/nodes/ValueNode;Z)Lorg/graalvm/compiler/nodes/ValueNode;
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.addPush:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
pop
5: .line 828
goto 7
6: .line 829
StackMap locals: org.graalvm.compiler.nodes.ValueNode org.graalvm.compiler.nodes.LogicNode org.graalvm.compiler.nodes.AbstractBeginNode
StackMap stack:
aload 1 /* b */
getstatic jdk.vm.ci.meta.JavaKind.Object:Ljdk/vm/ci/meta/JavaKind;
aload 4 /* object */
invokeinterface org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext.addPush:(Ljdk/vm/ci/meta/JavaKind;Lorg/graalvm/compiler/nodes/ValueNode;)Lorg/graalvm/compiler/nodes/ValueNode;
pop
7: .line 831
StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 8 // org.graalvm.compiler.nodes.AbstractBeginNode guard
end local 7 // org.graalvm.compiler.nodes.LogicNode condition
end local 6 // org.graalvm.compiler.nodes.ValueNode nullCheckedClass
end local 5 // org.graalvm.compiler.nodes.ValueNode javaClass
end local 4 // org.graalvm.compiler.nodes.ValueNode object
end local 3 // org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin$Receiver receiver
end local 2 // jdk.vm.ci.meta.ResolvedJavaMethod targetMethod
end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderContext b
end local 0 // com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$31 this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/oracle/svm/hosted/snippets/SubstrateGraphBuilderPlugins$31;
0 8 1 b Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderContext;
0 8 2 targetMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
0 8 3 receiver Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin$Receiver;
0 8 4 object Lorg/graalvm/compiler/nodes/ValueNode;
0 8 5 javaClass Lorg/graalvm/compiler/nodes/ValueNode;
1 8 6 nullCheckedClass Lorg/graalvm/compiler/nodes/ValueNode;
2 8 7 condition Lorg/graalvm/compiler/nodes/LogicNode;
3 8 8 guard Lorg/graalvm/compiler/nodes/AbstractBeginNode;
MethodParameters:
Name Flags
b
targetMethod
receiver
object
javaClass
}
SourceFile: "SubstrateGraphBuilderPlugins.java"
EnclosingMethod: com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins.registerCastExact:(Lorg/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins$Registration;)V
NestHost: com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins
InnerClasses:
com.oracle.svm.hosted.snippets.SubstrateGraphBuilderPlugins$31
public final BytecodeExceptionKind = org.graalvm.compiler.nodes.extended.BytecodeExceptionNode$BytecodeExceptionKind of org.graalvm.compiler.nodes.extended.BytecodeExceptionNode
public abstract Receiver = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin$Receiver of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugin
public Registration = org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins$Registration of org.graalvm.compiler.nodes.graphbuilderconf.InvocationPlugins