public class org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest extends org.graalvm.compiler.truffle.test.TestWithSynchronousCompiling
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest
super_class: org.graalvm.compiler.truffle.test.TestWithSynchronousCompiling
{
private static final org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime runtime;
descriptor: Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory CONFIGURED;
descriptor: Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
RuntimeVisibleAnnotations:
org.junit.experimental.theories.DataPoint()
public static final org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory DEFAULT;
descriptor: Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
RuntimeVisibleAnnotations:
org.junit.experimental.theories.DataPoint()
private int osrThreshold;
descriptor: I
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
checkcast org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime
putstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
1: invokedynamic createOSRLoop()Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(ILcom/oracle/truffle/api/nodes/RepeatingNode;[Lcom/oracle/truffle/api/frame/FrameSlot;[Lcom/oracle/truffle/api/frame/FrameSlot;)Lorg/graalvm/compiler/truffle/runtime/OptimizedOSRLoopNode;
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$0(ILcom/oracle/truffle/api/nodes/RepeatingNode;[Lcom/oracle/truffle/api/frame/FrameSlot;[Lcom/oracle/truffle/api/frame/FrameSlot;)Lorg/graalvm/compiler/truffle/runtime/OptimizedOSRLoopNode; (6)
(ILcom/oracle/truffle/api/nodes/RepeatingNode;[Lcom/oracle/truffle/api/frame/FrameSlot;[Lcom/oracle/truffle/api/frame/FrameSlot;)Lorg/graalvm/compiler/truffle/runtime/OptimizedOSRLoopNode;
putstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.CONFIGURED:Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
2: invokedynamic createOSRLoop()Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(ILcom/oracle/truffle/api/nodes/RepeatingNode;[Lcom/oracle/truffle/api/frame/FrameSlot;[Lcom/oracle/truffle/api/frame/FrameSlot;)Lorg/graalvm/compiler/truffle/runtime/OptimizedOSRLoopNode;
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$1(ILcom/oracle/truffle/api/nodes/RepeatingNode;[Lcom/oracle/truffle/api/frame/FrameSlot;[Lcom/oracle/truffle/api/frame/FrameSlot;)Lorg/graalvm/compiler/truffle/runtime/OptimizedOSRLoopNode; (6)
(ILcom/oracle/truffle/api/nodes/RepeatingNode;[Lcom/oracle/truffle/api/frame/FrameSlot;[Lcom/oracle/truffle/api/frame/FrameSlot;)Lorg/graalvm/compiler/truffle/runtime/OptimizedOSRLoopNode;
putstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.DEFAULT:Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
3: return
LocalVariableTable:
Start End Slot Name Signature
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.TestWithSynchronousCompiling.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
public static void doBefore();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=0
0: getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.OSRCompilationThreshold:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.options.OptionKey.getDefaultValue:()Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
istore 0
start local 0 1: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
iload 0
getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.DEFAULT:Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 1
start local 1 2: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 1
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
astore 2
start local 2 3: aload 2
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
4: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
iload 0
getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.CONFIGURED:Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 1
5: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 1
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
astore 2
6: aload 2
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 8 0 defaultThreshold I
2 8 1 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
3 8 2 target Lcom/oracle/truffle/api/CallTarget;
RuntimeVisibleAnnotations:
org.junit.BeforeClass()
public void before();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "engine.MultiTier"
aastore
dup
iconst_1
ldc "false"
aastore
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.setupContext:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
pop
1: invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic com.oracle.truffle.api.nodes.RootNode.createConstantNode:(Ljava/lang/Object;)Lcom/oracle/truffle/api/nodes/RootNode;
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 1
start local 1 2: aload 0
aload 1
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.OSRCompilationThreshold:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
putfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
2 4 1 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
RuntimeVisibleAnnotations:
org.junit.Before()
public void testOSRSingleInvocation(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
astore 3
start local 3 2: aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
3: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
4: aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
5: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
6: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.wasRepeatingCalledCompiled:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
7: return
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/OptimizedOSRLoopNodeTest;
0 8 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 8 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
2 8 3 target Lcom/oracle/truffle/api/CallTarget;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testOSRAndRewriteDoesNotSuppressTargetCompilation(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
iconst_2
anewarray java.lang.String
dup
iconst_0
ldc "engine.CompilationThreshold"
aastore
dup
iconst_1
ldc "3"
aastore
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.setupContext:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context;
pop
1: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNodeWithReplacement
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNodeWithReplacement.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 2: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.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 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNodeWithReplacement.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
5: aload 3
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
6: aload 3
aload 2
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNodeWithReplacement.toReplace:Lorg/graalvm/compiler/truffle/runtime/OptimizedOSRLoopNode;
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
ldc "test"
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.nodeReplaced:(Lcom/oracle/truffle/api/nodes/Node;Lcom/oracle/truffle/api/nodes/Node;Ljava/lang/CharSequence;)Z
pop
7: iconst_0
istore 4
start local 4 8: goto 11
9: StackMap locals: org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNodeWithReplacement org.graalvm.compiler.truffle.runtime.OptimizedCallTarget int
StackMap stack:
aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
10: iinc 4 1
StackMap locals:
StackMap stack:
11: iload 4
aload 3
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.CompilationThreshold:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
aload 3
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.ReplaceReprofileCount:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
iadd
iconst_1
isub
if_icmplt 9
end local 4 12: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNodeWithReplacement.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
13: aload 3
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
14: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 15 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
2 15 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNodeWithReplacement;
3 15 3 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
8 12 4 i I
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testTransferToInterpreter();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=1
start local 0 0: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.CONFIGURED:Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
astore 1
start local 1 1: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$1TransferToInterpreterTestRepeatingNode
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$1TransferToInterpreterTestRepeatingNode.<init>:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;)V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 2: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
astore 3
start local 3 3: aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
4: ldc 100
invokestatic java.lang.Thread.sleep:(J)V
5: goto 8
StackMap locals: org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode com.oracle.truffle.api.CallTarget
StackMap stack: java.lang.InterruptedException
6: astore 4
start local 4 7: aload 4
invokevirtual java.lang.InterruptedException.printStackTrace:()V
end local 4 8: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
1 10 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
2 10 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
3 10 3 target Lcom/oracle/truffle/api/CallTarget;
7 8 4 e Ljava/lang/InterruptedException;
Exception table:
from to target type
4 5 6 Class java.lang.InterruptedException
RuntimeVisibleAnnotations:
org.junit.Test()
public void testNonOSR(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
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/OptimizedOSRLoopNodeTest;
0 4 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 4 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testOSRFrameSlotChangeDuringOSR();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=3, args_size=1
start local 0 0: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.CONFIGURED:Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
astore 1
start local 1 1: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$2
dup
aload 0
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$1
dup
aload 0
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$1.<init>:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;)V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$2.<init>:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 2: aload 2
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
3: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
4: aload 2
iconst_1
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
5: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
6: aload 2
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
7: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
8: aload 2
iconst_1
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
9: aload 2
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
10: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
11: aload 2
iconst_1
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
12: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
13: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.wasRepeatingCalledCompiled:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
14: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
1 15 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
2 15 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
RuntimeVisibleAnnotations:
org.junit.Test()
org.junit.Ignore(value = "Needs mayor revision - GR-2515")
public void testNoInvalidationWithoutFirstExecution(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
astore 3
start local 3 2: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.forceOSR:()V
3: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
4: aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
5: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
6: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.wasRepeatingCalledCompiled:()Z
invokestatic org.junit.Assert.assertTrue:(Z)V
7: return
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/OptimizedOSRLoopNodeTest;
0 8 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 8 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
2 8 3 target Lcom/oracle/truffle/api/RootCallTarget;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testExecutionWithoutCallTarget(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: aload 2
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
2: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
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/OptimizedOSRLoopNodeTest;
0 4 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 4 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testExternalInvalidations(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: aload 2
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
2: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
3: iconst_0
istore 3
start local 3 4: goto 15
5: StackMap locals: org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode int
StackMap stack:
aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
ldc "test"
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.invalidate:(Ljava/lang/CharSequence;)Z
pop
6: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
7: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
8: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.junit.Assert.assertNotNull:(Ljava/lang/Object;)V
9: aload 2
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
isub
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
10: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
11: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.junit.Assert.assertNull:(Ljava/lang/Object;)V
12: aload 2
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
13: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
14: iinc 3 1
StackMap locals:
StackMap stack:
15: iload 3
bipush 10
if_icmplt 5
end local 3 16: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 17 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 17 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
4 16 3 i I
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testInternalInvalidations(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
astore 2
start local 2 1: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
aload 2
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 3
start local 3 2: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 3
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
astore 4
start local 4 3: aload 4
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 4
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.resetCompilationProfile:()V
5: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
6: aload 2
iconst_5
putfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.invalidationCounter:I
7: aload 4
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
9: aload 4
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
10: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
11: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 12 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 12 2 repeating Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;
2 12 3 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
3 12 4 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testOuterInvalidationTriggersOSR(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
astore 2
start local 2 1: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
aload 2
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 3
start local 3 2: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 3
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
astore 4
start local 4 3: aload 4
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
astore 5
start local 5 5: aload 5
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
6: iconst_0
istore 6
start local 6 7: goto 12
8: StackMap locals: org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode org.graalvm.compiler.truffle.runtime.OptimizedCallTarget org.graalvm.compiler.truffle.runtime.OptimizedCallTarget int
StackMap stack:
aload 4
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
9: aload 4
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
10: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
11: iinc 6 1
StackMap locals:
StackMap stack:
12: iload 6
aload 4
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.MinInvokeThreshold:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
iconst_2
isub
if_icmplt 8
13: aload 4
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
14: aload 4
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
15: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
16: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
aload 5
invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
17: aload 4
ldc "test"
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.invalidate:(Ljava/lang/CharSequence;)Z
pop
18: aload 4
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
19: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
20: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
aload 5
invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
21: aload 4
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.resetCompilationProfile:()V
22: aload 4
iconst_1
anewarray java.lang.Object
dup
iconst_0
bipush 15
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
23: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
24: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
aload 5
invokestatic org.junit.Assert.assertSame:(Ljava/lang/Object;Ljava/lang/Object;)V
25: aload 4
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
26: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
ldc "test"
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.invalidate:(Ljava/lang/CharSequence;)Z
pop
27: aload 4
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
28: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
29: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 30 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 30 2 repeating Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;
2 30 3 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
3 30 4 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
5 30 5 osrTarget Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
7 30 6 i I
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testNoOSRAfterMinInvocationThreshold(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
astore 3
start local 3 2: iconst_0
istore 4
start local 4 3: goto 7
4: StackMap locals: org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode org.graalvm.compiler.truffle.runtime.OptimizedCallTarget int
StackMap stack:
aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
5: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
6: iinc 4 1
StackMap locals:
StackMap stack:
7: iload 4
aload 3
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.MinInvokeThreshold:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
if_icmplt 4
8: aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
9: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)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/OptimizedOSRLoopNodeTest;
0 11 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 11 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
2 11 3 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
3 11 4 i I
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testOSRMinInvocationThresholdPropagateLoopCounts(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=9, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
astore 3
start local 3 2: aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
istore 4
start local 4 3: aload 3
getstatic org.graalvm.compiler.truffle.options.PolyglotCompilerOptions.MinInvokeThreshold:Lorg/graalvm/options/OptionKey;
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.getOptionValue:(Lorg/graalvm/options/OptionKey;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
istore 5
start local 5 4: iload 4
istore 7
start local 7 5: iconst_0
istore 6
start local 6 6: goto 12
7: StackMap locals: org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode org.graalvm.compiler.truffle.runtime.OptimizedCallTarget int int int int
StackMap stack:
iload 4
iload 5
idiv
istore 8
start local 8 8: iload 7
iload 8
isub
istore 7
9: aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 8
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
10: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
end local 8 11: iinc 6 1
StackMap locals:
StackMap stack:
12: iload 6
iload 5
iconst_1
isub
if_icmplt 7
13: aload 3
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
14: aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 7
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
15: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
16: aload 3
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
17: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 18 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 18 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
2 18 3 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
3 18 4 thresholdForOsr I
4 18 5 truffleMinInvokes I
6 18 6 i I
5 18 7 invokesleft I
8 11 8 invokes I
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testThreadSafety(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
istore 2
start local 2 1: invokedynamic getAsInt()Ljava/util/function/IntSupplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()I
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$2()I (6)
()I
invokestatic java.util.stream.IntStream.generate:(Ljava/util/function/IntSupplier;)Ljava/util/stream/IntStream;
ldc 10
invokeinterface java.util.stream.IntStream.limit:(J)Ljava/util/stream/IntStream;
invokeinterface java.util.stream.IntStream.parallel:()Ljava/util/stream/IntStream;
aload 0
aload 1
iload 2
invokedynamic accept(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;I)Ljava/util/function/IntConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(I)V
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$3(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;II)V (7)
(I)V
invokeinterface java.util.stream.IntStream.forEach:(Ljava/util/function/IntConsumer;)V
2: invokedynamic getAsInt()Ljava/util/function/IntSupplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()I
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$6()I (6)
()I
invokestatic java.util.stream.IntStream.generate:(Ljava/util/function/IntSupplier;)Ljava/util/stream/IntStream;
ldc 10
invokeinterface java.util.stream.IntStream.limit:(J)Ljava/util/stream/IntStream;
invokeinterface java.util.stream.IntStream.parallel:()Ljava/util/stream/IntStream;
aload 0
aload 1
iload 2
invokedynamic accept(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;I)Ljava/util/function/IntConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(I)V
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$7(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;II)V (7)
(I)V
invokeinterface java.util.stream.IntStream.forEach:(Ljava/util/function/IntConsumer;)V
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/OptimizedOSRLoopNodeTest;
0 4 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 4 2 threshold I
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testTwoLoopsSilblings(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
astore 3
start local 3 2: aload 3
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
3: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.waitForCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
4: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest.getOSRTarget2:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.waitForCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
5: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
6: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest.getOSRTarget2:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
7: aload 3
iconst_2
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.waitForCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
9: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest.getOSRTarget2:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.waitForCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
10: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
11: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest.getOSRTarget2:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
12: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest.getOSRTarget2:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
if_acmpeq 13
iconst_1
goto 14
StackMap locals: org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest com.oracle.truffle.api.CallTarget
StackMap stack:
13: iconst_0
StackMap locals:
StackMap stack: int
14: invokestatic org.junit.Assert.assertTrue:(Z)V
15: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 16 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 16 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest;
2 16 3 target Lcom/oracle/truffle/api/CallTarget;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testTwoLoopsParentChild1(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$10(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode;)Ljava/lang/Void; (6)
(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode;)Ljava/lang/Void;
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;Ljava/util/function/Function;)V
astore 2
start local 2 1: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
aload 2
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 3
start local 3 2: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 3
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
astore 4
start local 4 3: aload 4
iconst_2
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
5: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 7 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 7 2 childLoop Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode;
2 7 3 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
3 7 4 target Lcom/oracle/truffle/api/CallTarget;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testTwoLoopsParentChild2(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$11(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode;)Ljava/lang/Void; (6)
(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode;)Ljava/lang/Void;
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;Ljava/util/function/Function;)V
astore 2
start local 2 1: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
aload 2
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 3
start local 3 2: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 3
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
astore 4
start local 4 3: aload 4
iconst_2
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
5: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
6: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 7 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 7 2 childLoop Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode;
2 7 3 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
3 7 4 target Lcom/oracle/truffle/api/CallTarget;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testCustomLoopContributingToOSR1(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$CustomInnerLoopRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$CustomInnerLoopRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
bipush 10
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
bipush 10
idiv
iconst_1
isub
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
3: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
bipush 10
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
bipush 10
idiv
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 6 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 6 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testCustomLoopContributingToOSR2(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$CustomInnerLoopRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$CustomInnerLoopRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_1
isub
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
3: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 6 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 6 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testCustomLoopContributingToOSR3(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$CustomInnerLoopRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$CustomInnerLoopRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
iconst_2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_2
idiv
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
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/OptimizedOSRLoopNodeTest;
0 4 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 4 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testCustomLoopContributingToOSR4(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$CustomInnerLoopRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$CustomInnerLoopRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
iconst_2
anewarray java.lang.Object
dup
iconst_0
iconst_2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
iconst_2
idiv
iconst_1
isub
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.RootCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
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/OptimizedOSRLoopNodeTest;
0 4 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 4 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testStackTraceDoesNotShowOSR(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestOSRStackTrace
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestOSRStackTrace.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 2
start local 2 1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 2
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
astore 3
start local 3 2: aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
3: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.forceOSR:()V
4: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
5: aload 3
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
6: aload 2
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
7: return
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/OptimizedOSRLoopNodeTest;
0 8 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 8 2 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
2 8 3 target Lcom/oracle/truffle/api/CallTarget;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
public void testStackFrameNodes(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestOSRStackTraceFromAbove
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestOSRStackTraceFromAbove.<init>:()V
astore 2
start local 2 1: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
aload 2
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 3
start local 3 2: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 3
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.createCallTarget:(Lcom/oracle/truffle/api/nodes/RootNode;)Lcom/oracle/truffle/api/RootCallTarget;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedCallTarget
astore 4
start local 4 3: aload 3
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.forceOSR:()V
4: aload 4
iconst_1
anewarray java.lang.Object
dup
iconst_0
iconst_1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual org.graalvm.compiler.truffle.runtime.OptimizedCallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
pop
5: return
end local 4 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/OptimizedOSRLoopNodeTest;
0 6 1 factory Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;
1 6 2 testOSRStackTrace Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestOSRStackTraceFromAbove;
2 6 3 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
3 6 4 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
RuntimeVisibleAnnotations:
org.junit.experimental.theories.Theory()
MethodParameters:
Name Flags
factory
private static void executeNoCallTarget(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode, int);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.adoptChildren:()V
1: aload 0
invokestatic com.oracle.truffle.api.Truffle.getRuntime:()Lcom/oracle/truffle/api/TruffleRuntime;
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 1
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
aload 0
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getFrameDescriptor:()Lcom/oracle/truffle/api/frame/FrameDescriptor;
invokeinterface com.oracle.truffle.api.TruffleRuntime.createVirtualFrame:([Ljava/lang/Object;Lcom/oracle/truffle/api/frame/FrameDescriptor;)Lcom/oracle/truffle/api/frame/VirtualFrame;
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.execute:(Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
pop
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
0 3 1 count I
MethodParameters:
Name Flags
rootNode
count
private static void waitForCompiled(org.graalvm.compiler.truffle.runtime.OptimizedCallTarget);
descriptor: (Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
ifnull 5
1: getstatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.runtime:Lorg/graalvm/compiler/truffle/runtime/GraalTruffleRuntime;
aload 0
ldc 10000
invokevirtual org.graalvm.compiler.truffle.runtime.GraalTruffleRuntime.waitForCompilation:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;J)V
2: goto 5
StackMap locals:
StackMap stack: java.lang.Exception
3: pop
4: ldc "timeout"
invokestatic org.junit.Assert.fail:(Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 target Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
Exception table:
from to target type
1 2 3 Class java.util.concurrent.ExecutionException
1 2 3 Class java.util.concurrent.TimeoutException
MethodParameters:
Name Flags
target
private static org.graalvm.compiler.truffle.runtime.OptimizedOSRLoopNode lambda$0(int, com.oracle.truffle.api.nodes.RepeatingNode, com.oracle.truffle.api.frame.FrameSlot[], com.oracle.truffle.api.frame.FrameSlot[]);
descriptor: (ILcom/oracle/truffle/api/nodes/RepeatingNode;[Lcom/oracle/truffle/api/frame/FrameSlot;[Lcom/oracle/truffle/api/frame/FrameSlot;)Lorg/graalvm/compiler/truffle/runtime/OptimizedOSRLoopNode;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
iload 0
aload 2
aload 3
invokestatic org.graalvm.compiler.truffle.runtime.OptimizedOSRLoopNode.createOSRLoop:(Lcom/oracle/truffle/api/nodes/RepeatingNode;I[Lcom/oracle/truffle/api/frame/FrameSlot;[Lcom/oracle/truffle/api/frame/FrameSlot;)Lorg/graalvm/compiler/truffle/runtime/OptimizedOSRLoopNode;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 threshold I
0 1 1 repeating Lcom/oracle/truffle/api/nodes/RepeatingNode;
0 1 2 readFrameSlots [Lcom/oracle/truffle/api/frame/FrameSlot;
0 1 3 writtenFrameSlots [Lcom/oracle/truffle/api/frame/FrameSlot;
private static org.graalvm.compiler.truffle.runtime.OptimizedOSRLoopNode lambda$1(int, com.oracle.truffle.api.nodes.RepeatingNode, com.oracle.truffle.api.frame.FrameSlot[], com.oracle.truffle.api.frame.FrameSlot[]);
descriptor: (ILcom/oracle/truffle/api/nodes/RepeatingNode;[Lcom/oracle/truffle/api/frame/FrameSlot;[Lcom/oracle/truffle/api/frame/FrameSlot;)Lorg/graalvm/compiler/truffle/runtime/OptimizedOSRLoopNode;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokestatic org.graalvm.compiler.truffle.runtime.OptimizedOSRLoopNode.create:(Lcom/oracle/truffle/api/nodes/RepeatingNode;)Lcom/oracle/truffle/api/nodes/LoopNode;
checkcast org.graalvm.compiler.truffle.runtime.OptimizedOSRLoopNode
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 threshold I
0 1 1 repeating Lcom/oracle/truffle/api/nodes/RepeatingNode;
0 1 2 readFrameSlots [Lcom/oracle/truffle/api/frame/FrameSlot;
0 1 3 writtenFrameSlots [Lcom/oracle/truffle/api/frame/FrameSlot;
private static int lambda$2();
descriptor: ()I
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=0, args_size=0
0: bipush 10
ireturn
LocalVariableTable:
Start End Slot Name Signature
private void lambda$3(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory, int, int);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;II)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 3 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 4
start local 4 1: iload 2
invokedynamic getAsInt(I)Ljava/util/function/IntSupplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()I
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$4(I)I (6)
()I
invokestatic java.util.stream.IntStream.generate:(Ljava/util/function/IntSupplier;)Ljava/util/stream/IntStream;
ldc 10
invokeinterface java.util.stream.IntStream.limit:(J)Ljava/util/stream/IntStream;
invokeinterface java.util.stream.IntStream.parallel:()Ljava/util/stream/IntStream;
aload 4
iload 2
invokedynamic accept(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)Ljava/util/function/IntConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(I)V
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$5(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;II)V (6)
(I)V
invokeinterface java.util.stream.IntStream.forEach:(Ljava/util/function/IntConsumer;)V
2: aload 4
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.waitForCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
end local 4 3: return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 4 3 i I
1 3 4 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
private static int lambda$6();
descriptor: ()I
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=0, args_size=0
0: bipush 10
ireturn
LocalVariableTable:
Start End Slot Name Signature
private void lambda$7(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory, int, int);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;II)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 3 0: new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode
dup
aload 0
getfield org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.osrThreshold:I
aload 1
new org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode
dup
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode.<init>:()V
invokespecial org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.<init>:(ILorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$OSRLoopFactory;Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRepeatingNode;)V
astore 4
start local 4 1: iload 2
invokedynamic getAsInt(I)Ljava/util/function/IntSupplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()I
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$8(I)I (6)
()I
invokestatic java.util.stream.IntStream.generate:(Ljava/util/function/IntSupplier;)Ljava/util/stream/IntStream;
ldc 10
invokeinterface java.util.stream.IntStream.limit:(J)Ljava/util/stream/IntStream;
invokeinterface java.util.stream.IntStream.parallel:()Ljava/util/stream/IntStream;
aload 4
iload 2
invokedynamic accept(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)Ljava/util/function/IntConsumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(I)V
org/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest.lambda$9(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;II)V (6)
(I)V
invokeinterface java.util.stream.IntStream.forEach:(Ljava/util/function/IntConsumer;)V
2: aload 4
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.waitForCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
end local 4 3: return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest;
0 4 3 i I
1 3 4 rootNode Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;
private static java.lang.Void lambda$10(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode;)Ljava/lang/Void;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertNotCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
1: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 loop Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode;
private static java.lang.Void lambda$11(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode;)Ljava/lang/Void;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode.getOSRTarget:()Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.assertCompiled:(Lorg/graalvm/compiler/truffle/runtime/OptimizedCallTarget;)V
1: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 loop Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode;
private static int lambda$4(int);
descriptor: (I)I
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: iload 0
ireturn
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$5(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode, int, int);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;II)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 2 0: aload 0
iload 1
iconst_1
iadd
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 1 2 k I
private static int lambda$8(int);
descriptor: (I)I
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: iload 0
ireturn
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$9(org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode, int, int);
descriptor: (Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;II)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=3
start local 2 0: aload 0
iload 1
invokestatic org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest.executeNoCallTarget:(Lorg/graalvm/compiler/truffle/test/OptimizedOSRLoopNodeTest$TestRootNode;I)V
return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 1 2 k I
}
SourceFile: "OptimizedOSRLoopNodeTest.java"
NestMembers:
org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$1 org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$1TransferToInterpreterTestRepeatingNode org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$2 org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$CustomInnerLoopRepeatingNode org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestOSRStackTrace org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestOSRStackTrace$1 org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestOSRStackTraceFromAbove org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestOSRStackTraceFromAbove$1 org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNodeWithReplacement org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$1
TransferToInterpreterTestRepeatingNode = org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$1TransferToInterpreterTestRepeatingNode
org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$2
private ChildLoopRepeatingNode = org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$ChildLoopRepeatingNode of org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest
private CustomInnerLoopRepeatingNode = org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$CustomInnerLoopRepeatingNode of org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest
private abstract OSRLoopFactory = org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$OSRLoopFactory of org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest
private TestOSRStackTrace = org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestOSRStackTrace of org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest
private TestOSRStackTraceFromAbove = org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestOSRStackTraceFromAbove of org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest
private TestRepeatingNode = org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRepeatingNode of org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest
private TestRootNode = org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNode of org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest
private TestRootNodeWithReplacement = org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TestRootNodeWithReplacement of org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest
private TwoSilblingLoopNodesTest = org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest$TwoSilblingLoopNodesTest of org.graalvm.compiler.truffle.test.OptimizedOSRLoopNodeTest
RuntimeVisibleAnnotations:
org.junit.runner.RunWith(value = Lorg/junit/experimental/theories/Theories;)