public class org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest 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.ControlFlowExceptionPartialEvaluationTest
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/ControlFlowExceptionPartialEvaluationTest;
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 catchControlFlowException();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=1
start local 0 0: new com.oracle.truffle.api.frame.FrameDescriptor
dup
invokespecial com.oracle.truffle.api.frame.FrameDescriptor.<init>:()V
astore 1
start local 1 1: new org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchControlFlowExceptionTestNode
dup
new org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$ThrowControlFlowExceptionTestNode
dup
invokespecial org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$ThrowControlFlowExceptionTestNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchControlFlowExceptionTestNode.<init>:(Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;)V
astore 2
start local 2 2: aload 0
ldc "constant42"
new org.graalvm.compiler.truffle.test.nodes.RootTestNode
dup
aload 1
ldc "catchControlFlowException"
aload 2
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
invokevirtual org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest.assertPartialEvalEquals:(Ljava/lang/String;Lcom/oracle/truffle/api/nodes/RootNode;)Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
pop
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/truffle/test/ControlFlowExceptionPartialEvaluationTest;
1 4 1 fd Lcom/oracle/truffle/api/frame/FrameDescriptor;
2 4 2 result Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;
RuntimeVisibleAnnotations:
org.junit.Test()
public void catchSlowPathAndControlFlowException();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=1
start local 0 0: new com.oracle.truffle.api.frame.FrameDescriptor
dup
invokespecial com.oracle.truffle.api.frame.FrameDescriptor.<init>:()V
astore 1
start local 1 1: new org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchSlowPathAndControlFlowExceptionTestNode
dup
new org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$ThrowControlFlowExceptionTestNode
dup
invokespecial org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$ThrowControlFlowExceptionTestNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchSlowPathAndControlFlowExceptionTestNode.<init>:(Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;)V
astore 2
start local 2 2: aload 0
ldc "constant42"
new org.graalvm.compiler.truffle.test.nodes.RootTestNode
dup
aload 1
ldc "catchSlowPathAndControlFlowException"
aload 2
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
invokevirtual org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest.assertPartialEvalEquals:(Ljava/lang/String;Lcom/oracle/truffle/api/nodes/RootNode;)Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
pop
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/truffle/test/ControlFlowExceptionPartialEvaluationTest;
1 4 1 fd Lcom/oracle/truffle/api/frame/FrameDescriptor;
2 4 2 result Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;
RuntimeVisibleAnnotations:
org.junit.Test()
public void catchControlFlowExceptionWithLoopExplosion();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=3, args_size=1
start local 0 0: new com.oracle.truffle.api.frame.FrameDescriptor
dup
invokespecial com.oracle.truffle.api.frame.FrameDescriptor.<init>:()V
astore 1
start local 1 1: new org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchControlFlowExceptionTestNode
dup
new org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$BlockTestNode
dup
iconst_1
anewarray org.graalvm.compiler.truffle.test.nodes.AbstractTestNode
dup
iconst_0
new org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$ThrowControlFlowExceptionTestNode
dup
invokespecial org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$ThrowControlFlowExceptionTestNode.<init>:()V
aastore
invokespecial org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$BlockTestNode.<init>:([Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;)V
invokespecial org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchControlFlowExceptionTestNode.<init>:(Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;)V
astore 2
start local 2 2: aload 0
ldc "constant42"
new org.graalvm.compiler.truffle.test.nodes.RootTestNode
dup
aload 1
ldc "catchControlFlowExceptionWithLoopExplosion"
aload 2
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
invokevirtual org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest.assertPartialEvalEquals:(Ljava/lang/String;Lcom/oracle/truffle/api/nodes/RootNode;)Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
pop
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/truffle/test/ControlFlowExceptionPartialEvaluationTest;
1 4 1 fd Lcom/oracle/truffle/api/frame/FrameDescriptor;
2 4 2 result Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;
RuntimeVisibleAnnotations:
org.junit.Test()
public void catchControlFlowExceptionFromCall();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=1
start local 0 0: aload 0
iconst_0
anewarray java.lang.String
invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
iconst_1
invokevirtual org.graalvm.polyglot.Context$Builder.allowExperimentalOptions:(Z)Lorg/graalvm/polyglot/Context$Builder;
ldc "engine.Inlining"
ldc "true"
invokevirtual org.graalvm.polyglot.Context$Builder.option:(Ljava/lang/String;Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
invokevirtual org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest.setupContext:(Lorg/graalvm/polyglot/Context;)V
1: invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
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 "throwControlFlowException"
new org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$ThrowControlFlowExceptionTestNode
dup
invokespecial org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$ThrowControlFlowExceptionTestNode.<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
invokeinterface com.oracle.truffle.api.TruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
astore 1
start local 1 2: new org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchControlFlowExceptionTestNode
dup
new org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CallTestNode
dup
aload 1
invokespecial org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CallTestNode.<init>:(Lcom/oracle/truffle/api/CallTarget;)V
invokespecial org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchControlFlowExceptionTestNode.<init>:(Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;)V
astore 2
start local 2 3: aload 0
ldc "constant42"
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 "catchControlFlowExceptionFromCall"
aload 2
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
invokevirtual org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest.assertPartialEvalEquals:(Ljava/lang/String;Lcom/oracle/truffle/api/nodes/RootNode;)Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
pop
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/truffle/test/ControlFlowExceptionPartialEvaluationTest;
2 5 1 callTarget Lcom/oracle/truffle/api/CallTarget;
3 5 2 result Lorg/graalvm/compiler/truffle/test/nodes/AbstractTestNode;
RuntimeVisibleAnnotations:
org.junit.Test()
}
SourceFile: "ControlFlowExceptionPartialEvaluationTest.java"
NestMembers:
org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$BlockTestNode org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CallTestNode org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchControlFlowExceptionTestNode org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchSlowPathAndControlFlowExceptionTestNode org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$ThrowControlFlowExceptionTestNode
InnerClasses:
public BlockTestNode = org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$BlockTestNode of org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest
public CallTestNode = org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CallTestNode of org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest
public CatchControlFlowExceptionTestNode = org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchControlFlowExceptionTestNode of org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest
public CatchSlowPathAndControlFlowExceptionTestNode = org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$CatchSlowPathAndControlFlowExceptionTestNode of org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest
public ThrowControlFlowExceptionTestNode = org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest$ThrowControlFlowExceptionTestNode of org.graalvm.compiler.truffle.test.ControlFlowExceptionPartialEvaluationTest
public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context