public class org.graalvm.compiler.truffle.test.MaterializedFrameTest extends org.graalvm.compiler.truffle.test.PartialEvaluationTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.truffle.test.MaterializedFrameTest
super_class: org.graalvm.compiler.truffle.test.PartialEvaluationTest
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // org.graalvm.compiler.truffle.test.MaterializedFrameTest this
0: .line 55
aload 0 /* this */
invokespecial org.graalvm.compiler.truffle.test.PartialEvaluationTest.<init>:()V
return
end local 0 // org.graalvm.compiler.truffle.test.MaterializedFrameTest this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/truffle/test/MaterializedFrameTest;
private static com.oracle.truffle.api.nodes.RootNode createRootNode();
descriptor: ()Lcom/oracle/truffle/api/nodes/RootNode;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=0
0: .line 57
new com.oracle.truffle.api.frame.FrameDescriptor
dup
invokespecial com.oracle.truffle.api.frame.FrameDescriptor.<init>:()V
astore 0 /* fd */
start local 0 // com.oracle.truffle.api.frame.FrameDescriptor fd
1: .line 58
aload 0 /* fd */
ldc "test"
invokevirtual com.oracle.truffle.api.frame.FrameDescriptor.addFrameSlot:(Ljava/lang/Object;)Lcom/oracle/truffle/api/frame/FrameSlot;
astore 1 /* slot */
start local 1 // com.oracle.truffle.api.frame.FrameSlot slot
2: .line 59
new org.graalvm.compiler.truffle.test.MaterializedFrameTest$1
dup
aconst_null
aload 0 /* fd */
aload 1 /* slot */
invokespecial org.graalvm.compiler.truffle.test.MaterializedFrameTest$1.<init>:(Lcom/oracle/truffle/api/TruffleLanguage;Lcom/oracle/truffle/api/frame/FrameDescriptor;Lcom/oracle/truffle/api/frame/FrameSlot;)V
areturn
end local 1 // com.oracle.truffle.api.frame.FrameSlot slot
end local 0 // com.oracle.truffle.api.frame.FrameDescriptor fd
LocalVariableTable:
Start End Slot Name Signature
1 3 0 fd Lcom/oracle/truffle/api/frame/FrameDescriptor;
2 3 1 slot Lcom/oracle/truffle/api/frame/FrameSlot;
public void getFrameSlotKind();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=1
start local 0 // org.graalvm.compiler.truffle.test.MaterializedFrameTest this
0: .line 84
invokestatic org.graalvm.compiler.truffle.test.MaterializedFrameTest.createRootNode:()Lcom/oracle/truffle/api/nodes/RootNode;
astore 1 /* rootNode */
start local 1 // com.oracle.truffle.api.nodes.RootNode rootNode
1: .line 85
invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
aload 1 /* rootNode */
invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
astore 2 /* callTarget */
start local 2 // com.oracle.truffle.api.RootCallTarget callTarget
2: .line 86
aload 0 /* this */
aload 2 /* callTarget */
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
iconst_0
anewarray java.lang.Object
getstatic org.graalvm.compiler.core.common.CompilationIdentifier.INVALID_COMPILATION_ID:Lorg/graalvm/compiler/core/common/CompilationRequestIdentifier;
invokevirtual org.graalvm.compiler.truffle.test.MaterializedFrameTest.partialEval:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;[Ljava/lang/Object;Lorg/graalvm/compiler/core/common/CompilationIdentifier;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 3 /* graph */
start local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
3: .line 88
aload 3 /* graph */
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/java/MethodCallTargetNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
astore 4 /* calls */
start local 4 // org.graalvm.compiler.graph.iterators.NodeIterable calls
4: .line 89
new java.lang.StringBuilder
dup
ldc "Unexpected call(s): "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4 /* calls */
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.snapshot:()Ljava/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 4 /* calls */
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.isEmpty:()Z
invokestatic org.graalvm.compiler.truffle.test.MaterializedFrameTest.assertTrue:(Ljava/lang/String;Z)V
5: .line 90
aload 3 /* graph */
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/calc/IsNullNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 6
goto 8
StackMap locals: org.graalvm.compiler.truffle.test.MaterializedFrameTest com.oracle.truffle.api.nodes.RootNode com.oracle.truffle.api.RootCallTarget org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.graph.iterators.NodeIterable top java.util.Iterator
StackMap stack:
6: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.calc.IsNullNode
astore 5 /* isNull */
start local 5 // org.graalvm.compiler.nodes.calc.IsNullNode isNull
7: .line 91
new java.lang.StringBuilder
dup
ldc "Unexpected IsNull: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5 /* isNull */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5 /* isNull */
invokevirtual org.graalvm.compiler.nodes.calc.IsNullNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5 /* isNull */
invokevirtual org.graalvm.compiler.nodes.calc.IsNullNode.getValue:()Lorg/graalvm/compiler/nodes/ValueNode;
ldc Lorg/graalvm/compiler/nodes/java/LoadFieldNode;
invokestatic org.hamcrest.CoreMatchers.instanceOf:(Ljava/lang/Class;)Lorg/hamcrest/Matcher;
invokestatic org.hamcrest.CoreMatchers.not:(Lorg/hamcrest/Matcher;)Lorg/hamcrest/Matcher;
invokestatic org.junit.Assert.assertThat:(Ljava/lang/String;Ljava/lang/Object;Lorg/hamcrest/Matcher;)V
end local 5 // org.graalvm.compiler.nodes.calc.IsNullNode isNull
8: .line 90
StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
9: .line 93
aload 3 /* graph */
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/java/LoadFieldNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 6
goto 12
StackMap locals:
StackMap stack:
10: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.java.LoadFieldNode
astore 5 /* loadField */
start local 5 // org.graalvm.compiler.nodes.java.LoadFieldNode loadField
11: .line 94
new java.lang.StringBuilder
dup
ldc "Unexpected LoadField: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5 /* loadField */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5 /* loadField */
invokevirtual org.graalvm.compiler.nodes.java.LoadFieldNode.field:()Ljdk/vm/ci/meta/ResolvedJavaField;
invokeinterface jdk.vm.ci.meta.ResolvedJavaField.getName:()Ljava/lang/String;
ldc "tags"
invokestatic org.hamcrest.CoreMatchers.equalTo:(Ljava/lang/Object;)Lorg/hamcrest/Matcher;
invokestatic org.hamcrest.CoreMatchers.either:(Lorg/hamcrest/Matcher;)Lorg/hamcrest/core/CombinableMatcher$CombinableEitherMatcher;
ldc "primitiveLocals"
invokestatic org.hamcrest.CoreMatchers.equalTo:(Ljava/lang/Object;)Lorg/hamcrest/Matcher;
invokevirtual org.hamcrest.core.CombinableMatcher$CombinableEitherMatcher.or:(Lorg/hamcrest/Matcher;)Lorg/hamcrest/core/CombinableMatcher;
invokestatic org.junit.Assert.assertThat:(Ljava/lang/String;Ljava/lang/Object;Lorg/hamcrest/Matcher;)V
end local 5 // org.graalvm.compiler.nodes.java.LoadFieldNode loadField
12: .line 93
StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
13: .line 96
return
end local 4 // org.graalvm.compiler.graph.iterators.NodeIterable calls
end local 3 // org.graalvm.compiler.nodes.StructuredGraph graph
end local 2 // com.oracle.truffle.api.RootCallTarget callTarget
end local 1 // com.oracle.truffle.api.nodes.RootNode rootNode
end local 0 // org.graalvm.compiler.truffle.test.MaterializedFrameTest this
LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lorg/graalvm/compiler/truffle/test/MaterializedFrameTest;
1 14 1 rootNode Lcom/oracle/truffle/api/nodes/RootNode;
2 14 2 callTarget Lcom/oracle/truffle/api/RootCallTarget;
3 14 3 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
4 14 4 calls Lorg/graalvm/compiler/graph/iterators/NodeIterable<Lorg/graalvm/compiler/nodes/java/MethodCallTargetNode;>;
7 8 5 isNull Lorg/graalvm/compiler/nodes/calc/IsNullNode;
11 12 5 loadField Lorg/graalvm/compiler/nodes/java/LoadFieldNode;
RuntimeVisibleAnnotations:
org.junit.Test()
}
SourceFile: "MaterializedFrameTest.java"
NestMembers:
org.graalvm.compiler.truffle.test.MaterializedFrameTest$1
InnerClasses:
org.graalvm.compiler.truffle.test.MaterializedFrameTest$1
public final CombinableEitherMatcher = org.hamcrest.core.CombinableMatcher$CombinableEitherMatcher of org.hamcrest.core.CombinableMatcher