public class org.graalvm.compiler.core.test.MemoryScheduleTest extends org.graalvm.compiler.core.test.GraphScheduleTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.core.test.MemoryScheduleTest
super_class: org.graalvm.compiler.core.test.GraphScheduleTest
{
private static final org.graalvm.compiler.core.test.MemoryScheduleTest$Container container;
descriptor: Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.List<org.graalvm.compiler.core.test.MemoryScheduleTest$Container> containerList;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;>;
private static final double LOOP_ENTRY_PROBABILITY;
descriptor: D
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0.9
private int hash;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private final char[] value;
descriptor: [C
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new org.graalvm.compiler.core.test.MemoryScheduleTest$Container
dup
invokespecial org.graalvm.compiler.core.test.MemoryScheduleTest$Container.<init>:()V
putstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putstatic org.graalvm.compiler.core.test.MemoryScheduleTest.containerList:Ljava/util/List;
2: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.core.test.GraphScheduleTest.<init>:()V
1: aload 0
iconst_0
putfield org.graalvm.compiler.core.test.MemoryScheduleTest.hash:I
2: aload 0
iconst_3
newarray 5
putfield org.graalvm.compiler.core.test.MemoryScheduleTest.value:[C
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
public static int testSimpleSnippet();
descriptor: ()I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=0
0: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 1
1: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
2: iload 1
ireturn
3: StackMap locals:
StackMap stack: java.lang.Throwable
astore 0
4: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
5: aload 0
athrow
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
0 1 3 any
public void testSimple();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testSplit1Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 2
1: iload 0
ifge 4
2: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
3: goto 5
4: StackMap locals: int top int
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
5: StackMap locals:
StackMap stack:
iload 2
ireturn
6: StackMap locals: int
StackMap stack: java.lang.Throwable
astore 1
7: iload 0
ifge 10
8: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
9: goto 11
10: StackMap locals: java.lang.Throwable
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
11: StackMap locals:
StackMap stack:
aload 1
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 a I
Exception table:
from to target type
0 1 6 any
MethodParameters:
Name Flags
a
public void testSplit1();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testSplit2Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 2
1: iload 0
ifge 4
2: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.c:I
3: goto 5
4: StackMap locals: int top int
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
5: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
aconst_null
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.obj:Ljava/lang/Object;
6: iload 2
ireturn
7: StackMap locals: int
StackMap stack: java.lang.Throwable
astore 1
8: iload 0
ifge 11
9: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.c:I
10: goto 12
11: StackMap locals: java.lang.Throwable
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
12: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
aconst_null
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.obj:Ljava/lang/Object;
13: aload 1
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 a I
Exception table:
from to target type
0 1 7 any
MethodParameters:
Name Flags
a
public void testSplit2();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testLoop1Snippet(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 3
1: iconst_0
istore 4
start local 4 2: goto 8
3: StackMap locals: int int top int int
StackMap stack:
iload 1
ifge 6
4: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 10
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
5: goto 7
6: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: ldc 0.9
iload 4
iload 0
if_icmpge 9
iconst_1
goto 10
StackMap locals:
StackMap stack: double
9: iconst_0
StackMap locals: int int top int int
StackMap stack: double int
10: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 3
end local 4 11: iload 3
ireturn
12: StackMap locals: int int
StackMap stack: java.lang.Throwable
astore 2
13: iconst_0
istore 4
start local 4 14: goto 20
15: StackMap locals: int int java.lang.Throwable top int
StackMap stack:
iload 1
ifge 18
16: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 10
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
17: goto 19
18: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
19: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
20: ldc 0.9
iload 4
iload 0
if_icmpge 21
iconst_1
goto 22
StackMap locals:
StackMap stack: double
21: iconst_0
StackMap locals: int int java.lang.Throwable top int
StackMap stack: double int
22: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 15
end local 4 23: aload 2
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 a I
0 24 1 b I
2 11 4 i I
14 23 4 i I
Exception table:
from to target type
0 1 12 any
MethodParameters:
Name Flags
a
b
public void testLoop1();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testLoop2Snippet(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 3
1: iconst_0
istore 4
start local 4 2: goto 8
3: StackMap locals: int int top int int
StackMap stack:
iload 1
ifge 6
4: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 10
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
5: goto 7
6: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.c:I
7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: ldc 0.9
iload 4
iload 0
if_icmpge 9
iconst_1
goto 10
StackMap locals:
StackMap stack: double
9: iconst_0
StackMap locals: int int top int int
StackMap stack: double int
10: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 3
end local 4 11: iload 3
ireturn
12: StackMap locals: int int
StackMap stack: java.lang.Throwable
astore 2
13: iconst_0
istore 4
start local 4 14: goto 20
15: StackMap locals: int int java.lang.Throwable top int
StackMap stack:
iload 1
ifge 18
16: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 10
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
17: goto 19
18: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 15
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.c:I
19: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
20: ldc 0.9
iload 4
iload 0
if_icmpge 21
iconst_1
goto 22
StackMap locals:
StackMap stack: double
21: iconst_0
StackMap locals: int int java.lang.Throwable top int
StackMap stack: double int
22: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 15
end local 4 23: aload 2
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 a I
0 24 1 b I
2 11 4 i I
14 23 4 i I
Exception table:
from to target type
0 1 12 any
MethodParameters:
Name Flags
a
b
public void testLoop2();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testLoop3Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 7
3: StackMap locals: int int
StackMap stack:
iload 2
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
isub
ifne 5
4: goto 10
5: StackMap locals:
StackMap stack:
iinc 1 1
6: iinc 2 1
StackMap locals:
StackMap stack:
7: ldc 0.9
iload 2
iload 0
if_icmpge 8
iconst_1
goto 9
StackMap locals:
StackMap stack: double
8: iconst_0
StackMap locals: int int int
StackMap stack: double int
9: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 3
end local 2 10: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 a I
1 11 1 j I
2 10 2 i I
MethodParameters:
Name Flags
a
public void testLoop3();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public java.lang.String testStringReplaceSnippet(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
bipush 97
bipush 98
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
0 1 1 input Ljava/lang/String;
MethodParameters:
Name Flags
input
public void testStringReplace();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testLoop5Snippet(int, int, org.graalvm.compiler.core.test.MemoryScheduleTest);
descriptor: (IILorg/graalvm/compiler/core/test/MemoryScheduleTest;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: iload 1
istore 4
start local 4 2: iconst_0
istore 5
start local 5 3: goto 11
4: StackMap locals: int int int
StackMap stack:
aload 2
getfield org.graalvm.compiler.core.test.MemoryScheduleTest.hash:I
istore 3
5: iload 0
bipush 10
if_icmple 8
6: iinc 4 1
7: goto 9
8: StackMap locals:
StackMap stack:
iinc 4 -1
9: StackMap locals:
StackMap stack:
iload 3
bipush 10
idiv
istore 3
10: iinc 5 1
StackMap locals:
StackMap stack:
11: ldc 0.9
iload 5
iload 0
if_icmpge 12
iconst_1
goto 13
StackMap locals:
StackMap stack: double
12: iconst_0
StackMap locals: int int org.graalvm.compiler.core.test.MemoryScheduleTest int int int
StackMap stack: double int
13: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 4
end local 5 14: iload 3
iload 4
iadd
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 a I
0 15 1 b I
0 15 2 obj Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
1 15 3 ret I
2 15 4 bb I
3 14 5 i I
MethodParameters:
Name Flags
a
b
obj
public void testLoop5();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testLoop6Snippet(int, int, org.graalvm.compiler.core.test.MemoryScheduleTest);
descriptor: (IILorg/graalvm/compiler/core/test/MemoryScheduleTest;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=7, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: iload 1
istore 4
start local 4 2: iconst_0
istore 5
start local 5 3: goto 18
4: StackMap locals: int int int
StackMap stack:
aload 2
getfield org.graalvm.compiler.core.test.MemoryScheduleTest.hash:I
istore 3
5: iload 0
bipush 10
if_icmple 8
6: iinc 4 1
7: goto 16
8: StackMap locals:
StackMap stack:
iinc 4 -1
9: iconst_0
istore 6
start local 6 10: goto 13
11: StackMap locals: int
StackMap stack:
aload 2
iconst_3
putfield org.graalvm.compiler.core.test.MemoryScheduleTest.hash:I
12: iinc 6 1
StackMap locals:
StackMap stack:
13: ldc 0.9
iload 6
iload 1
if_icmpge 14
iconst_1
goto 15
StackMap locals:
StackMap stack: double
14: iconst_0
StackMap locals: int int org.graalvm.compiler.core.test.MemoryScheduleTest int int int int
StackMap stack: double int
15: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 11
end local 6 16: StackMap locals:
StackMap stack:
iload 3
bipush 10
idiv
istore 3
17: iinc 5 1
StackMap locals:
StackMap stack:
18: ldc 0.9
iload 5
iload 0
if_icmpge 19
iconst_1
goto 20
StackMap locals:
StackMap stack: double
19: iconst_0
StackMap locals: int int org.graalvm.compiler.core.test.MemoryScheduleTest int int int
StackMap stack: double int
20: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 4
end local 5 21: iload 3
iload 4
iadd
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 a I
0 22 1 b I
0 22 2 obj Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
1 22 3 ret I
2 22 4 bb I
3 21 5 i I
10 16 6 j I
MethodParameters:
Name Flags
a
b
obj
public void testLoop6();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testLoop7Snippet(int, int, org.graalvm.compiler.core.test.MemoryScheduleTest);
descriptor: (IILorg/graalvm/compiler/core/test/MemoryScheduleTest;)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: iload 1
istore 4
start local 4 2: iconst_0
istore 5
start local 5 3: goto 25
4: StackMap locals: int int int
StackMap stack:
aload 2
getfield org.graalvm.compiler.core.test.MemoryScheduleTest.hash:I
istore 3
5: iload 0
bipush 10
if_icmple 8
6: iinc 4 1
7: goto 23
8: StackMap locals:
StackMap stack:
iinc 4 -1
9: iconst_0
istore 6
start local 6 10: goto 20
11: StackMap locals: int
StackMap stack:
iload 6
iconst_2
irem
iconst_1
if_icmpne 19
12: iconst_0
istore 7
start local 7 13: goto 16
14: StackMap locals: int
StackMap stack:
aload 2
iconst_3
putfield org.graalvm.compiler.core.test.MemoryScheduleTest.hash:I
15: iinc 7 1
StackMap locals:
StackMap stack:
16: ldc 0.9
iload 7
iload 1
if_icmpge 17
iconst_1
goto 18
StackMap locals:
StackMap stack: double
17: iconst_0
StackMap locals: int int org.graalvm.compiler.core.test.MemoryScheduleTest int int int int int
StackMap stack: double int
18: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 14
end local 7 19: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
20: ldc 0.9
iload 6
iload 0
if_icmpge 21
iconst_1
goto 22
StackMap locals:
StackMap stack: double
21: iconst_0
StackMap locals: int int org.graalvm.compiler.core.test.MemoryScheduleTest int int int int
StackMap stack: double int
22: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 11
end local 6 23: StackMap locals:
StackMap stack:
iload 3
bipush 10
idiv
istore 3
24: iinc 5 1
StackMap locals:
StackMap stack:
25: ldc 0.9
iload 5
iload 0
if_icmpge 26
iconst_1
goto 27
StackMap locals:
StackMap stack: double
26: iconst_0
StackMap locals: int int org.graalvm.compiler.core.test.MemoryScheduleTest int int int
StackMap stack: double int
27: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 4
end local 5 28: iload 3
iload 4
iadd
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 a I
0 29 1 b I
0 29 2 obj Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
1 29 3 ret I
2 29 4 bb I
3 28 5 i I
10 23 6 k I
13 19 7 j I
MethodParameters:
Name Flags
a
b
obj
public void testLoop7();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testLoop8Snippet(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 14
3: StackMap locals: int int
StackMap stack:
iload 1
ifge 6
4: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 10
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
5: goto 17
6: StackMap locals:
StackMap stack:
iconst_0
istore 4
start local 4 7: goto 10
8: StackMap locals: int
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
iconst_0
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
9: iinc 4 1
StackMap locals:
StackMap stack:
10: ldc 0.9
iload 4
iload 1
if_icmpge 11
iconst_1
goto 12
StackMap locals:
StackMap stack: double
11: iconst_0
StackMap locals: int int int int int
StackMap stack: double int
12: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 8
end local 4 13: iinc 3 1
StackMap locals:
StackMap stack:
14: ldc 0.9
iload 3
iload 0
if_icmpge 15
iconst_1
goto 16
StackMap locals:
StackMap stack: double
15: iconst_0
StackMap locals: int int int int
StackMap stack: double int
16: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 3
end local 3 17: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.api.directives.GraalDirectives.controlFlowAnchor:()V
18: iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 a I
0 19 1 b I
1 19 2 result I
2 17 3 i I
7 13 4 j I
MethodParameters:
Name Flags
a
b
public void testLoop8();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testLoop9Snippet(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
iload 1
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
iload 2
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
iload 0
if_icmplt 3
end local 2 6: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.controlFlowAnchor:()V
7: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 a I
0 8 1 b I
2 6 2 i I
MethodParameters:
Name Flags
a
b
public void testLoop9();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tTest cannot be resolved to a type\n\tThe method assertThat(graph.getNodes(ReturnNode.TYPE), NodeIterableCount) is undefined for the type MemoryScheduleTest\n\tThe method instanceOf(Class<FloatingReadNode>) is undefined for the type MemoryScheduleTest\n\tAssert cannot be resolved\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testIfRead1Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 1
start local 1 1: iload 0
ifge 3
2: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 10
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
3: StackMap locals: int
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 a I
1 4 1 res I
MethodParameters:
Name Flags
a
public void testIfRead1();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testIfRead2Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: iload 0
ifge 4
2: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 10
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
3: goto 5
4: StackMap locals: int
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 1
5: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 a I
1 6 1 res I
MethodParameters:
Name Flags
a
public void testIfRead2();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testIfRead3Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iload 0
ifge 2
1: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 10
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
2: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 1
start local 1 3: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 20
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
4: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 a I
3 5 1 res I
MethodParameters:
Name Flags
a
public void testIfRead3();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testIfRead4Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iload 0
ifle 4
1: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 1
start local 1 2: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 32
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
3: iload 1
ireturn
end local 1 4: StackMap locals:
StackMap stack:
bipush 16
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 a I
2 4 1 res I
MethodParameters:
Name Flags
a
public void testIfRead4();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testIfRead5Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
ifge 2
1: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 10
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
2: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a I
MethodParameters:
Name Flags
a
public void testIfRead5();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testAntiDependencySnippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 1
start local 1 1: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 10
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
2: iload 0
ifge 4
3: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 20
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
4: StackMap locals: int
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 30
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.c:I
5: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 a I
1 6 1 res I
MethodParameters:
Name Flags
a
public void testAntiDependency();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testBlockScheduleSnippet();
descriptor: ()I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: iconst_0
istore 0
start local 0 1: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
iconst_0
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
2: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 16
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
3: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 32
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
4: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 48
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
5: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 64
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
6: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
istore 0
7: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 80
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
8: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 96
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
9: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
bipush 112
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
10: iload 0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 11 0 res I
public void testBlockSchedule();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testBlockSchedule2Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
iload 0
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
2: iconst_0
istore 2
start local 2 3: goto 8
4: StackMap locals: int int
StackMap stack:
iload 2
bipush 10
if_icmpne 6
5: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
ireturn
6: StackMap locals:
StackMap stack:
iload 1
iload 2
iadd
istore 1
7: iinc 2 1
StackMap locals:
StackMap stack:
8: iload 2
bipush 100
if_icmplt 4
end local 2 9: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 value I
1 10 1 res I
3 9 2 i I
MethodParameters:
Name Flags
value
public void testBlockSchedule2();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static void testProxySnippet();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=0
0: goto 9
1: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.containerList:Ljava/util/List;
invokespecial java.util.ArrayList.<init>:(Ljava/util/Collection;)V
astore 0
start local 0 2: goto 6
3: StackMap locals: java.util.List
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.obj:Ljava/lang/Object;
ifnull 5
4: return
5: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
dup
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.c:I
iconst_1
iadd
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.c:I
6: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.c:I
aload 0
invokeinterface java.util.List.size:()I
if_icmplt 3
7: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
iconst_0
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
8: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
dup
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
iconst_1
isub
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
end local 0 9: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.a:I
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
if_icmplt 1
10: getstatic org.graalvm.compiler.core.test.MemoryScheduleTest.container:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;
dup
getfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
iconst_1
iadd
putfield org.graalvm.compiler.core.test.MemoryScheduleTest$Container.b:I
11: return
LocalVariableTable:
Start End Slot Name Signature
2 9 0 list Ljava/util/List<Lorg/graalvm/compiler/core/test/MemoryScheduleTest$Container;>;
public void testProxy();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public int testStringHashCodeSnippet();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.core.test.MemoryScheduleTest.hash:I
istore 1
start local 1 1: iload 1
ifne 9
aload 0
getfield org.graalvm.compiler.core.test.MemoryScheduleTest.value:[C
arraylength
ifle 9
2: aload 0
getfield org.graalvm.compiler.core.test.MemoryScheduleTest.value:[C
astore 2
start local 2 3: iconst_0
istore 3
start local 3 4: goto 7
5: StackMap locals: int char[] int
StackMap stack:
bipush 31
iload 1
imul
aload 2
iload 3
caload
iadd
istore 1
6: iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
aload 0
getfield org.graalvm.compiler.core.test.MemoryScheduleTest.value:[C
arraylength
if_icmplt 5
end local 3 8: aload 0
iload 1
putfield org.graalvm.compiler.core.test.MemoryScheduleTest.hash:I
end local 2 9: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
1 10 1 h I
3 9 2 val [C
4 8 3 i I
public void testStringHashCode();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
public static int testLoop4Snippet(int);
descriptor: (I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: iload 0
newarray 10
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int[] int
StackMap stack:
aload 1
iload 2
iload 2
iastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: ldc 0.9
iload 2
aload 1
arraylength
if_icmpge 6
iconst_1
goto 7
StackMap locals:
StackMap stack: double
6: iconst_0
StackMap locals: int int[] int
StackMap stack: double int
7: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 3
end local 2 8: iconst_0
istore 2
start local 2 9: iload 0
iconst_1
isub
istore 3
start local 3 10: iconst_0
istore 4
start local 4 11: goto 15
12: StackMap locals: int int
StackMap stack:
iload 4
aload 1
iload 2
iaload
aload 1
iload 3
iaload
iadd
iconst_2
idiv
iadd
istore 4
13: iload 2
istore 3
14: iinc 2 1
15: StackMap locals:
StackMap stack:
ldc 0.9
iload 2
iload 0
if_icmpge 16
iconst_1
goto 17
StackMap locals:
StackMap stack: double
16: iconst_0
StackMap locals: int int[] int int int
StackMap stack: double int
17: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.injectBranchProbability:(DZ)Z
ifne 12
18: iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 count I
1 19 1 a [I
2 8 2 i I
9 19 2 i I
10 19 3 iwrap I
11 19 4 sum I
MethodParameters:
Name Flags
count
public void testLoop4();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tTest cannot be resolved to a type\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
RuntimeInvisibleAnnotations:
Test()
private void assertReadWithinAllReturnBlocks(org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult, boolean);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
getfield org.graalvm.compiler.nodes.cfg.ControlFlowGraph.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 3
start local 3 1: aload 3
getstatic org.graalvm.compiler.nodes.ReturnNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.isNotEmpty:()Z
invokestatic org.graalvm.compiler.core.test.MemoryScheduleTest.assertTrue:(Z)V
2: iconst_0
istore 4
start local 4 3: iconst_0
istore 5
start local 5 4: aload 3
getstatic org.graalvm.compiler.nodes.ReturnNode.TYPE:Lorg/graalvm/compiler/graph/NodeClass;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:(Lorg/graalvm/compiler/graph/NodeClass;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.iterator:()Ljava/util/Iterator;
astore 7
goto 14
StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int org.graalvm.compiler.nodes.StructuredGraph int int top java.util.Iterator
StackMap stack:
5: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.ReturnNode
astore 6
start local 6 6: aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getNodeToBlock:()Lorg/graalvm/compiler/graph/NodeMap;
aload 6
invokevirtual org.graalvm.compiler.graph.NodeMap.get:(Lorg/graalvm/compiler/graph/Node;)Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.cfg.Block
astore 8
start local 8 7: aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getBlockToNodesMap:()Lorg/graalvm/compiler/core/common/cfg/BlockMap;
aload 8
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
checkcast java.util.List
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 12
StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.nodes.ReturnNode java.util.Iterator org.graalvm.compiler.nodes.cfg.Block top java.util.Iterator
StackMap stack:
8: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 9
start local 9 9: aload 9
instanceof org.graalvm.compiler.nodes.memory.FloatingReadNode
ifeq 12
10: iinc 4 1
11: goto 13
end local 9 12: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
13: StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int org.graalvm.compiler.nodes.StructuredGraph int int org.graalvm.compiler.nodes.ReturnNode java.util.Iterator org.graalvm.compiler.nodes.cfg.Block
StackMap stack:
iinc 5 1
end local 8 end local 6 14: StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int org.graalvm.compiler.nodes.StructuredGraph int int top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
15: aload 0
iload 4
iload 5
if_icmpne 16
iconst_1
goto 17
StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int org.graalvm.compiler.nodes.StructuredGraph int int
StackMap stack: org.graalvm.compiler.core.test.MemoryScheduleTest
16: iconst_0
StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int org.graalvm.compiler.nodes.StructuredGraph int int
StackMap stack: org.graalvm.compiler.core.test.MemoryScheduleTest int
17: invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iload 2
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual org.graalvm.compiler.core.test.MemoryScheduleTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
18: return
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 19 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
0 19 1 schedule Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
0 19 2 withinReturnBlock Z
1 19 3 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
3 19 4 withRead I
4 19 5 returnBlocks I
6 14 6 returnNode Lorg/graalvm/compiler/nodes/ReturnNode;
7 14 8 block Lorg/graalvm/compiler/nodes/cfg/Block;
9 12 9 node Lorg/graalvm/compiler/graph/Node;
MethodParameters:
Name Flags
schedule
withinReturnBlock
private void assertReadWithinStartBlock(org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult, boolean);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getBlockToNodesMap:()Lorg/graalvm/compiler/core/common/cfg/BlockMap;
aload 1
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/nodes/cfg/Block;
invokevirtual org.graalvm.compiler.core.common.cfg.BlockMap.get:(Lorg/graalvm/compiler/core/common/cfg/AbstractBlockBase;)Ljava/lang/Object;
checkcast java.util.List
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 5
StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int int top java.util.Iterator
StackMap stack:
2: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 4
start local 4 3: aload 4
instanceof org.graalvm.compiler.nodes.memory.FloatingReadNode
ifeq 5
4: iconst_1
istore 3
end local 4 5: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
6: aload 0
iload 2
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iload 3
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual org.graalvm.compiler.core.test.MemoryScheduleTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)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/core/test/MemoryScheduleTest;
0 8 1 schedule Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
0 8 2 withinStartBlock Z
1 8 3 readEncountered Z
3 5 4 node Lorg/graalvm/compiler/graph/Node;
MethodParameters:
Name Flags
schedule
withinStartBlock
private static void assertReadAndWriteInSameBlock(org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult, boolean);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;Z)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
getfield org.graalvm.compiler.nodes.cfg.ControlFlowGraph.graph:Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 2
start local 2 1: aload 2
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.first:()Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.memory.FloatingReadNode
astore 3
start local 3 2: aload 2
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/memory/WriteNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.first:()Lorg/graalvm/compiler/graph/Node;
checkcast org.graalvm.compiler.nodes.memory.WriteNode
astore 4
start local 4 3: iload 1
aload 0
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
aload 3
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.blockFor:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/nodes/cfg/Block;
aload 0
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
aload 4
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.blockFor:(Lorg/graalvm/compiler/graph/Node;)Lorg/graalvm/compiler/nodes/cfg/Block;
if_acmpne 4
iconst_1
goto 5
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.memory.FloatingReadNode org.graalvm.compiler.nodes.memory.WriteNode
StackMap stack: int
4: iconst_0
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.nodes.memory.FloatingReadNode org.graalvm.compiler.nodes.memory.WriteNode
StackMap stack: int int
5: ixor
ifeq 6
iconst_0
goto 7
StackMap locals:
StackMap stack:
6: iconst_1
StackMap locals:
StackMap stack: int
7: invokestatic org.graalvm.compiler.core.test.MemoryScheduleTest.assertTrue:(Z)V
8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 schedule Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
0 9 1 inSame Z
1 9 2 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
2 9 3 read Lorg/graalvm/compiler/nodes/memory/FloatingReadNode;
3 9 4 write Lorg/graalvm/compiler/nodes/memory/WriteNode;
MethodParameters:
Name Flags
schedule
inSame
private static void assertReadBeforeAllWritesInStartBlock(org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: iconst_0
istore 2
start local 2 2: aload 0
aload 0
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.getCFG:()Lorg/graalvm/compiler/nodes/cfg/ControlFlowGraph;
invokevirtual org.graalvm.compiler.nodes.cfg.ControlFlowGraph.getStartBlock:()Lorg/graalvm/compiler/nodes/cfg/Block;
invokevirtual org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult.nodesFor:(Lorg/graalvm/compiler/nodes/cfg/Block;)Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 12
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int int top java.util.Iterator
StackMap stack:
3: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.graph.Node
astore 3
start local 3 4: aload 3
instanceof org.graalvm.compiler.nodes.memory.FloatingReadNode
ifeq 10
5: iload 1
ifeq 6
iconst_0
goto 7
StackMap locals: org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int int org.graalvm.compiler.graph.Node java.util.Iterator
StackMap stack:
6: iconst_1
StackMap locals:
StackMap stack: int
7: invokestatic org.graalvm.compiler.core.test.MemoryScheduleTest.assertTrue:(Z)V
8: iconst_1
istore 2
9: goto 12
StackMap locals:
StackMap stack:
10: aload 3
instanceof org.graalvm.compiler.nodes.memory.WriteNode
ifeq 12
11: iconst_1
istore 1
end local 3 12: StackMap locals: org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult int int top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
13: iload 2
invokestatic org.graalvm.compiler.core.test.MemoryScheduleTest.assertTrue:(Z)V
14: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 schedule Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
1 15 1 writeNodeFound Z
2 15 2 readNodeFound Z
4 12 3 node Lorg/graalvm/compiler/graph/Node;
MethodParameters:
Name Flags
schedule
private org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult getFinalSchedule(java.lang.String, org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode);
descriptor: (Ljava/lang/String;Lorg/graalvm/compiler/core/test/MemoryScheduleTest$TestMode;)Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy.LATEST_OUT_OF_LOOPS:Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
invokevirtual org.graalvm.compiler.core.test.MemoryScheduleTest.getFinalSchedule:(Ljava/lang/String;Lorg/graalvm/compiler/core/test/MemoryScheduleTest$TestMode;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;)Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
0 1 1 snippet Ljava/lang/String;
0 1 2 mode Lorg/graalvm/compiler/core/test/MemoryScheduleTest$TestMode;
MethodParameters:
Name Flags
snippet final
mode final
private org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult getFinalSchedule(java.lang.String, org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode, org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy);
descriptor: (Ljava/lang/String;Lorg/graalvm/compiler/core/test/MemoryScheduleTest$TestMode;Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;)Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=14, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.graalvm.compiler.options.OptionValues
dup
invokestatic org.graalvm.compiler.core.test.MemoryScheduleTest.getInitialOptions:()Lorg/graalvm/compiler/options/OptionValues;
getstatic org.graalvm.compiler.core.common.GraalOptions.OptScheduleOutOfLoops:Lorg/graalvm/compiler/options/OptionKey;
aload 3
getstatic org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy.LATEST_OUT_OF_LOOPS:Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
if_acmpne 1
iconst_1
goto 2
StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest java.lang.String org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy
StackMap stack: new 0 new 0 org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.OptionKey
1: iconst_0
StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest java.lang.String org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy
StackMap stack: new 0 new 0 org.graalvm.compiler.options.OptionValues org.graalvm.compiler.options.OptionKey int
2: invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_2
anewarray java.lang.Object
dup
iconst_0
getstatic org.graalvm.compiler.core.common.GraalOptions.OptImplicitNullChecks:Lorg/graalvm/compiler/options/OptionKey;
aastore
dup
iconst_1
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
invokespecial org.graalvm.compiler.options.OptionValues.<init>:(Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/options/OptionKey;Ljava/lang/Object;[Ljava/lang/Object;)V
astore 4
start local 4 3: aload 0
aload 1
getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.NO:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
aload 4
invokevirtual org.graalvm.compiler.core.test.MemoryScheduleTest.parseEager:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;Lorg/graalvm/compiler/options/OptionValues;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 5
start local 5 4: aload 5
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getDebug:()Lorg/graalvm/compiler/debug/DebugContext;
astore 6
start local 6 5: aconst_null
astore 7
aconst_null
astore 8
6: aload 6
ldc "FloatingReadTest"
aload 5
invokevirtual org.graalvm.compiler.debug.DebugContext.scope:(Ljava/lang/Object;Ljava/lang/Object;)Lorg/graalvm/compiler/debug/DebugContext$Scope;
astore 9
start local 9 7: aload 0
invokevirtual org.graalvm.compiler.core.test.MemoryScheduleTest.getDefaultHighTierContext:()Lorg/graalvm/compiler/phases/tiers/HighTierContext;
astore 10
start local 10 8: aload 0
invokevirtual org.graalvm.compiler.core.test.MemoryScheduleTest.createCanonicalizerPhase:()Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
astore 11
start local 11 9: aload 11
aload 5
aload 10
invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
10: aload 2
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode.INLINED_WITHOUT_FRAMESTATES:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$TestMode;
if_acmpne 12
11: aload 0
aload 11
invokevirtual org.graalvm.compiler.core.test.MemoryScheduleTest.createInliningPhase:(Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;)Lorg/graalvm/compiler/phases/BasePhase;
aload 5
aload 10
invokevirtual org.graalvm.compiler.phases.BasePhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
12: StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest java.lang.String org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.options.OptionValues org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.phases.tiers.HighTierContext org.graalvm.compiler.phases.common.CanonicalizerPhase
StackMap stack:
new org.graalvm.compiler.phases.common.LoweringPhase
dup
aload 11
getstatic org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage.HIGH_TIER:Lorg/graalvm/compiler/nodes/spi/LoweringTool$StandardLoweringStage;
invokespecial org.graalvm.compiler.phases.common.LoweringPhase.<init>:(Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
aload 5
aload 10
invokevirtual org.graalvm.compiler.phases.common.LoweringPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
13: aload 2
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode.WITHOUT_FRAMESTATES:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$TestMode;
if_acmpeq 14
aload 2
getstatic org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode.INLINED_WITHOUT_FRAMESTATES:Lorg/graalvm/compiler/core/test/MemoryScheduleTest$TestMode;
if_acmpne 15
14: StackMap locals:
StackMap stack:
aload 5
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.clearAllStateAfter:()V
15: StackMap locals:
StackMap stack:
aload 6
iconst_1
aload 5
ldc "after removal of framestates"
invokevirtual org.graalvm.compiler.debug.DebugContext.dump:(ILjava/lang/Object;Ljava/lang/String;)V
16: new org.graalvm.compiler.phases.common.FloatingReadPhase
dup
invokespecial org.graalvm.compiler.phases.common.FloatingReadPhase.<init>:()V
aload 5
invokevirtual org.graalvm.compiler.phases.common.FloatingReadPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
17: new org.graalvm.compiler.phases.common.RemoveValueProxyPhase
dup
invokespecial org.graalvm.compiler.phases.common.RemoveValueProxyPhase.<init>:()V
aload 5
invokevirtual org.graalvm.compiler.phases.common.RemoveValueProxyPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
18: new org.graalvm.compiler.phases.tiers.MidTierContext
dup
aload 0
invokevirtual org.graalvm.compiler.core.test.MemoryScheduleTest.getProviders:()Lorg/graalvm/compiler/phases/util/Providers;
aload 0
invokevirtual org.graalvm.compiler.core.test.MemoryScheduleTest.getTargetProvider:()Lorg/graalvm/compiler/phases/tiers/TargetProvider;
getstatic org.graalvm.compiler.phases.OptimisticOptimizations.ALL:Lorg/graalvm/compiler/phases/OptimisticOptimizations;
aload 5
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getProfilingInfo:()Ljdk/vm/ci/meta/ProfilingInfo;
invokespecial org.graalvm.compiler.phases.tiers.MidTierContext.<init>:(Lorg/graalvm/compiler/phases/util/Providers;Lorg/graalvm/compiler/phases/tiers/TargetProvider;Lorg/graalvm/compiler/phases/OptimisticOptimizations;Ljdk/vm/ci/meta/ProfilingInfo;)V
astore 12
start local 12 19: new org.graalvm.compiler.phases.common.GuardLoweringPhase
dup
invokespecial org.graalvm.compiler.phases.common.GuardLoweringPhase.<init>:()V
aload 5
aload 12
invokevirtual org.graalvm.compiler.phases.common.GuardLoweringPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
20: new org.graalvm.compiler.phases.common.LoweringPhase
dup
aload 11
getstatic org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage.MID_TIER:Lorg/graalvm/compiler/nodes/spi/LoweringTool$StandardLoweringStage;
invokespecial org.graalvm.compiler.phases.common.LoweringPhase.<init>:(Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
aload 5
aload 12
invokevirtual org.graalvm.compiler.phases.common.LoweringPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
21: new org.graalvm.compiler.phases.common.LoweringPhase
dup
aload 11
getstatic org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage.LOW_TIER:Lorg/graalvm/compiler/nodes/spi/LoweringTool$StandardLoweringStage;
invokespecial org.graalvm.compiler.phases.common.LoweringPhase.<init>:(Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;Lorg/graalvm/compiler/nodes/spi/LoweringTool$LoweringStage;)V
aload 5
aload 12
invokevirtual org.graalvm.compiler.phases.common.LoweringPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
22: new org.graalvm.compiler.phases.schedule.SchedulePhase
dup
aload 3
invokespecial org.graalvm.compiler.phases.schedule.SchedulePhase.<init>:(Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;)V
astore 13
start local 13 23: aload 13
aload 5
invokevirtual org.graalvm.compiler.phases.schedule.SchedulePhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;)V
24: aload 5
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getLastSchedule:()Lorg/graalvm/compiler/nodes/StructuredGraph$ScheduleResult;
25: aload 9
ifnull 26
aload 9
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
26: StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest java.lang.String org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.options.OptionValues org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope org.graalvm.compiler.phases.tiers.HighTierContext org.graalvm.compiler.phases.common.CanonicalizerPhase org.graalvm.compiler.phases.tiers.MidTierContext org.graalvm.compiler.phases.schedule.SchedulePhase
StackMap stack: org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult
areturn
end local 13 end local 12 end local 11 end local 10 StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest java.lang.String org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.options.OptionValues org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.debug.DebugContext java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.DebugContext$Scope
StackMap stack: java.lang.Throwable
27: astore 7
28: aload 9
ifnull 29
aload 9
invokeinterface org.graalvm.compiler.debug.DebugContext$Scope.close:()V
end local 9 StackMap locals:
StackMap stack:
29: aload 7
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
30: astore 8
aload 7
ifnonnull 31
aload 8
astore 7
goto 32
StackMap locals:
StackMap stack:
31: aload 7
aload 8
if_acmpeq 32
aload 7
aload 8
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
32: aload 7
athrow
StackMap locals: org.graalvm.compiler.core.test.MemoryScheduleTest java.lang.String org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy org.graalvm.compiler.options.OptionValues org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.debug.DebugContext
StackMap stack: java.lang.Throwable
33: astore 7
start local 7 34: aload 6
aload 7
invokevirtual org.graalvm.compiler.debug.DebugContext.handle:(Ljava/lang/Throwable;)Ljava/lang/RuntimeException;
athrow
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 35 0 this Lorg/graalvm/compiler/core/test/MemoryScheduleTest;
0 35 1 snippet Ljava/lang/String;
0 35 2 mode Lorg/graalvm/compiler/core/test/MemoryScheduleTest$TestMode;
0 35 3 schedulingStrategy Lorg/graalvm/compiler/phases/schedule/SchedulePhase$SchedulingStrategy;
3 35 4 options Lorg/graalvm/compiler/options/OptionValues;
4 35 5 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
5 35 6 debug Lorg/graalvm/compiler/debug/DebugContext;
7 29 9 d Lorg/graalvm/compiler/debug/DebugContext$Scope;
8 27 10 context Lorg/graalvm/compiler/phases/tiers/HighTierContext;
9 27 11 canonicalizer Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
19 27 12 midContext Lorg/graalvm/compiler/phases/tiers/MidTierContext;
23 27 13 schedule Lorg/graalvm/compiler/phases/schedule/SchedulePhase;
34 35 7 e Ljava/lang/Throwable;
Exception table:
from to target type
7 25 27 any
6 26 30 any
27 30 30 any
5 26 33 Class java.lang.Throwable
27 33 33 Class java.lang.Throwable
MethodParameters:
Name Flags
snippet final
mode final
schedulingStrategy final
}
SourceFile: "MemoryScheduleTest.java"
NestMembers:
org.graalvm.compiler.core.test.MemoryScheduleTest$Container org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode
InnerClasses:
public Container = org.graalvm.compiler.core.test.MemoryScheduleTest$Container of org.graalvm.compiler.core.test.MemoryScheduleTest
private final TestMode = org.graalvm.compiler.core.test.MemoryScheduleTest$TestMode of org.graalvm.compiler.core.test.MemoryScheduleTest
public abstract Scope = org.graalvm.compiler.debug.DebugContext$Scope of org.graalvm.compiler.debug.DebugContext
public final AllowAssumptions = org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions of org.graalvm.compiler.nodes.StructuredGraph
public ScheduleResult = org.graalvm.compiler.nodes.StructuredGraph$ScheduleResult of org.graalvm.compiler.nodes.StructuredGraph
public abstract LoweringStage = org.graalvm.compiler.nodes.spi.LoweringTool$LoweringStage of org.graalvm.compiler.nodes.spi.LoweringTool
public final StandardLoweringStage = org.graalvm.compiler.nodes.spi.LoweringTool$StandardLoweringStage of org.graalvm.compiler.nodes.spi.LoweringTool
public final SchedulingStrategy = org.graalvm.compiler.phases.schedule.SchedulePhase$SchedulingStrategy of org.graalvm.compiler.phases.schedule.SchedulePhase