public class org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest 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.AssumedValuePartialEvaluationTest
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 0: aload 0
invokespecial org.graalvm.compiler.truffle.test.PartialEvaluationTest.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/truffle/test/AssumedValuePartialEvaluationTest;
public static java.lang.Object constant42();
descriptor: ()Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
LocalVariableTable:
Start End Slot Name Signature
public void testFold();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=1
start local 0 0: new com.oracle.truffle.api.utilities.AssumedValue
dup
bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokespecial com.oracle.truffle.api.utilities.AssumedValue.<init>:(Ljava/lang/Object;)V
astore 1
start local 1 1: new org.graalvm.compiler.truffle.test.nodes.RootTestNode
dup
new com.oracle.truffle.api.frame.FrameDescriptor
dup
invokespecial com.oracle.truffle.api.frame.FrameDescriptor.<init>:()V
ldc "assumedValue"
new org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadConstantAssumedValueNode
dup
aload 1
invokespecial org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadConstantAssumedValueNode.<init>:(Lcom/oracle/truffle/api/utilities/AssumedValue;)V
invokespecial org.graalvm.compiler.truffle.test.nodes.RootTestNode.<init>:(Lcom/oracle/truffle/api/frame/FrameDescriptor;Ljava/lang/String;Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;)V
astore 2
start local 2 2: aload 0
ldc "constant42"
aload 2
invokevirtual org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest.assertPartialEvalEquals:(Ljava/lang/String;Lcom/oracle/truffle/api/nodes/RootNode;)Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
astore 3
start local 3 3: ldc "CallTarget is valid"
aload 3
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
4: bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 3
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
5: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/truffle/test/AssumedValuePartialEvaluationTest;
1 6 1 value Lcom/oracle/truffle/api/utilities/AssumedValue<Ljava/lang/Integer;>;
2 6 2 root Lorg/graalvm/compiler/truffle/test/nodes/RootTestNode;
3 6 3 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testDeopt();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=1
start local 0 0: new com.oracle.truffle.api.utilities.AssumedValue
dup
bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokespecial com.oracle.truffle.api.utilities.AssumedValue.<init>:(Ljava/lang/Object;)V
astore 1
start local 1 1: new org.graalvm.compiler.truffle.test.nodes.RootTestNode
dup
new com.oracle.truffle.api.frame.FrameDescriptor
dup
invokespecial com.oracle.truffle.api.frame.FrameDescriptor.<init>:()V
ldc "assumedValue"
new org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadConstantAssumedValueNode
dup
aload 1
invokespecial org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadConstantAssumedValueNode.<init>:(Lcom/oracle/truffle/api/utilities/AssumedValue;)V
invokespecial org.graalvm.compiler.truffle.test.nodes.RootTestNode.<init>:(Lcom/oracle/truffle/api/frame/FrameDescriptor;Ljava/lang/String;Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;)V
astore 2
start local 2 2: aload 0
ldc "constant42"
aload 2
invokevirtual org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest.assertPartialEvalEquals:(Ljava/lang/String;Lcom/oracle/truffle/api/nodes/RootNode;)Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
astore 3
start local 3 3: ldc "CallTarget is valid"
aload 3
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
4: bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 3
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
5: aload 1
bipush 37
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual com.oracle.truffle.api.utilities.AssumedValue.set:(Ljava/lang/Object;)V
6: ldc "CallTarget was invalidated"
aload 3
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
invokestatic org.junit.Assert.assertFalse:(Ljava/lang/String;Z)V
7: bipush 37
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 3
iconst_0
anewarray java.lang.Object
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
8: return
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/truffle/test/AssumedValuePartialEvaluationTest;
1 9 1 value Lcom/oracle/truffle/api/utilities/AssumedValue<Ljava/lang/Integer;>;
2 9 2 root Lorg/graalvm/compiler/truffle/test/nodes/RootTestNode;
3 9 3 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testDynamic();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=1
start local 0 0: new com.oracle.truffle.api.utilities.AssumedValue
dup
bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokespecial com.oracle.truffle.api.utilities.AssumedValue.<init>:(Ljava/lang/Object;)V
astore 1
start local 1 1: new org.graalvm.compiler.truffle.test.nodes.RootTestNode
dup
new com.oracle.truffle.api.frame.FrameDescriptor
dup
invokespecial com.oracle.truffle.api.frame.FrameDescriptor.<init>:()V
ldc "assumedValue"
new org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadDynamicAssumedValueNode
dup
invokespecial org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadDynamicAssumedValueNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.nodes.RootTestNode.<init>:(Lcom/oracle/truffle/api/frame/FrameDescriptor;Ljava/lang/String;Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;)V
astore 2
start local 2 2: invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
aload 2
invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
astore 3
start local 3 3: aload 0
aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokevirtual org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest.partialEval:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;[Ljava/lang/Object;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 4
start local 4 4: aload 0
aload 3
aload 4
invokevirtual org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest.compile:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
5: ldc "CallTarget is valid"
aload 3
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
6: bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/truffle/test/AssumedValuePartialEvaluationTest;
1 8 1 value Lcom/oracle/truffle/api/utilities/AssumedValue<Ljava/lang/Integer;>;
2 8 2 root Lorg/graalvm/compiler/truffle/test/nodes/RootTestNode;
3 8 3 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
4 8 4 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
RuntimeVisibleAnnotations:
org.junit.Test()
public void testDynamicNoDeopt();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=1
start local 0 0: new com.oracle.truffle.api.utilities.AssumedValue
dup
bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokespecial com.oracle.truffle.api.utilities.AssumedValue.<init>:(Ljava/lang/Object;)V
astore 1
start local 1 1: new org.graalvm.compiler.truffle.test.nodes.RootTestNode
dup
new com.oracle.truffle.api.frame.FrameDescriptor
dup
invokespecial com.oracle.truffle.api.frame.FrameDescriptor.<init>:()V
ldc "assumedValue"
new org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadDynamicAssumedValueNode
dup
invokespecial org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadDynamicAssumedValueNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.nodes.RootTestNode.<init>:(Lcom/oracle/truffle/api/frame/FrameDescriptor;Ljava/lang/String;Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;)V
astore 2
start local 2 2: invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
aload 2
invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
astore 3
start local 3 3: aload 0
aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokevirtual org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest.partialEval:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;[Ljava/lang/Object;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 4
start local 4 4: aload 0
aload 3
aload 4
invokevirtual org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest.compile:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
5: ldc "CallTarget is valid"
aload 3
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
6: bipush 42
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
7: aload 1
bipush 37
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual com.oracle.truffle.api.utilities.AssumedValue.set:(Ljava/lang/Object;)V
8: ldc "CallTarget is still valid"
aload 3
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.isValid:()Z
invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
9: bipush 37
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
10: return
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/truffle/test/AssumedValuePartialEvaluationTest;
1 11 1 value Lcom/oracle/truffle/api/utilities/AssumedValue<Ljava/lang/Integer;>;
2 11 2 root Lorg/graalvm/compiler/truffle/test/nodes/RootTestNode;
3 11 3 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
4 11 4 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
RuntimeVisibleAnnotations:
org.junit.Test()
}
SourceFile: "AssumedValuePartialEvaluationTest.java"
NestMembers:
org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadConstantAssumedValueNode org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadDynamicAssumedValueNode
InnerClasses:
private ReadConstantAssumedValueNode = org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadConstantAssumedValueNode of org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest
private ReadDynamicAssumedValueNode = org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest$ReadDynamicAssumedValueNode of org.graalvm.compiler.truffle.test.AssumedValuePartialEvaluationTest