class org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1 implements java.lang.Runnable
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1
super_class: java.lang.Object
{
final org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests this$0;
descriptor: Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests);
descriptor: (Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1 this
0: .line 155
aload 0 /* this */
aload 1
putfield org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1.this$0:Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests$1;
MethodParameters:
Name Flags
this$0 final
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=1
start local 0 // org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1 this
0: .line 160
aload 0 /* this */
getfield org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1.this$0:Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;
ldc "unsafeFoldComponentType"
getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.NO:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
invokestatic org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests.access$0:(Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;Ljava/lang/String;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 1 /* graph */
start local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
1: .line 161
aload 0 /* this */
getfield org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1.this$0:Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;
invokestatic org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests.access$1:(Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;)Lorg/graalvm/compiler/phases/tiers/HighTierContext;
astore 2 /* highContext */
start local 2 // org.graalvm.compiler.phases.tiers.HighTierContext highContext
2: .line 162
aload 1 /* graph */
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/ParameterNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.first:()Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.ParameterNode
astore 3 /* param */
start local 3 // org.graalvm.compiler.nodes.ParameterNode param
3: .line 163
aload 3 /* param */
aload 0 /* this */
getfield org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1.this$0:Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;
invokestatic org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests.access$2:(Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;)Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
ldc Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests$DummyClass;
invokeinterface org.graalvm.compiler.api.replacements.SnippetReflectionProvider.forObject:(Ljava/lang/Object;)Ljdk/vm/ci/meta/JavaConstant;
aload 0 /* this */
getfield org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1.this$0:Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;
invokestatic org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests.access$3:(Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;)Ljdk/vm/ci/meta/MetaAccessProvider;
aload 1 /* graph */
invokestatic org.graalvm.compiler.nodes.ConstantNode.forConstant:(Ljdk/vm/ci/meta/JavaConstant;Ljdk/vm/ci/meta/MetaAccessProvider;Lorg/graalvm/compiler/nodes/StructuredGraph;)Lorg/graalvm/compiler/nodes/ConstantNode;
invokevirtual org.graalvm.compiler.nodes.ParameterNode.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
4: .line 164
aload 0 /* this */
getfield org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1.this$0:Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;
invokestatic org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests.access$4:(Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;)Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
aload 1 /* graph */
aload 2 /* highContext */
invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
5: .line 165
aload 1 /* graph */
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/ReturnNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.first:()Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.ReturnNode
astore 4 /* returnNode */
start local 4 // org.graalvm.compiler.nodes.ReturnNode returnNode
6: .line 166
aload 0 /* this */
getfield org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1.this$0:Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;
invokestatic org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests.access$2:(Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;)Lorg/graalvm/compiler/api/replacements/SnippetReflectionProvider;
ldc Ljava/lang/Object;
aload 4 /* returnNode */
invokevirtual org.graalvm.compiler.nodes.ReturnNode.result:()Lorg/graalvm/compiler/nodes/ValueNode;
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;
astore 5 /* result */
start local 5 // java.lang.Object result
7: .line 167
aload 0 /* this */
getfield org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1.this$0:Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;
ldc "componentType must be null for non-array"
aconst_null
aload 5 /* result */
invokestatic org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests.access$5:(Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
8: .line 168
return
end local 5 // java.lang.Object result
end local 4 // org.graalvm.compiler.nodes.ReturnNode returnNode
end local 3 // org.graalvm.compiler.nodes.ParameterNode param
end local 2 // org.graalvm.compiler.phases.tiers.HighTierContext highContext
end local 1 // org.graalvm.compiler.nodes.StructuredGraph graph
end local 0 // org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1 this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/graalvm/compiler/hotspot/test/ClassSubstitutionsTests$1;
1 9 1 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
2 9 2 highContext Lorg/graalvm/compiler/phases/tiers/HighTierContext;
3 9 3 param Lorg/graalvm/compiler/nodes/ParameterNode;
6 9 4 returnNode Lorg/graalvm/compiler/nodes/ReturnNode;
7 9 5 result Ljava/lang/Object;
}
SourceFile: "ClassSubstitutionsTests.java"
EnclosingMethod: org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests.testUnsafeFoldComponentType:()V
NestHost: org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests
InnerClasses:
org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$1
DummyClass = org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests$DummyClass of org.graalvm.compiler.hotspot.test.ClassSubstitutionsTests
public final AllowAssumptions = org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions of org.graalvm.compiler.nodes.StructuredGraph