public class org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest extends org.graalvm.compiler.core.test.GraalCompilerTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest
super_class: org.graalvm.compiler.core.test.GraalCompilerTest
{
private static int field;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
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.core.test.GraalCompilerTest.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/IntegerEqualsCanonicalizerTest;
public void testSubtractEqualsZero();
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/IntegerEqualsCanonicalizerTest;
RuntimeInvisibleAnnotations:
Test()
public static int testSubtractEqualsZeroReference(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 0
iload 1
if_icmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a I
0 3 1 b I
MethodParameters:
Name Flags
a
b
public static int testSubtractEqualsZeroSnippet(int, int);
descriptor: (II)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 0
iload 1
isub
ifne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a I
0 3 1 b I
MethodParameters:
Name Flags
a
b
public void testSubtractEqualsZeroLong();
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/IntegerEqualsCanonicalizerTest;
RuntimeInvisibleAnnotations:
Test()
public static int testSubtractEqualsZeroLongReference(long, long);
descriptor: (JJ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 2 0: lload 0
lload 2
lcmp
ifne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a J
0 3 2 b J
MethodParameters:
Name Flags
a
b
public static int testSubtractEqualsZeroLongSnippet(long, long);
descriptor: (JJ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 2 0: lload 0
lload 2
lsub
lconst_0
lcmp
ifne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 a J
0 3 2 b J
MethodParameters:
Name Flags
a
b
public void testShiftEquals();
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/IntegerEqualsCanonicalizerTest;
RuntimeInvisibleAnnotations:
Test()
public static void testShiftEqualsSnippet(int, int[], int);
descriptor: (I[II)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 0
bipush 10
iushr
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
3: aload 1
arraylength
bipush 10
ishr
ifne 4
iconst_1
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
6: iload 0
bipush 10
ishl
ifne 7
iconst_1
goto 8
StackMap locals:
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
9: iload 0
bipush 10
ishr
ifne 10
iconst_1
goto 11
StackMap locals:
StackMap stack:
10: iconst_0
StackMap locals:
StackMap stack: int
11: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
12: iload 0
iload 2
iushr
ifne 13
iconst_1
goto 14
StackMap locals:
StackMap stack:
13: iconst_0
StackMap locals:
StackMap stack: int
14: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
15: iload 0
iload 2
ishr
ifne 16
iconst_1
goto 17
StackMap locals:
StackMap stack:
16: iconst_0
StackMap locals:
StackMap stack: int
17: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
18: iload 0
iload 2
ishl
ifne 19
iconst_1
goto 20
StackMap locals:
StackMap stack:
19: iconst_0
StackMap locals:
StackMap stack: int
20: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
21: iload 0
iload 2
iushr
iconst_1
if_icmpne 22
iconst_1
goto 23
StackMap locals:
StackMap stack:
22: iconst_0
StackMap locals:
StackMap stack: int
23: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
24: iload 0
iload 2
ishr
iconst_1
if_icmpne 25
iconst_1
goto 26
StackMap locals:
StackMap stack:
25: iconst_0
StackMap locals:
StackMap stack: int
26: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
27: iload 0
iload 2
ishl
iconst_1
if_icmpne 28
iconst_1
goto 29
StackMap locals:
StackMap stack:
28: iconst_0
StackMap locals:
StackMap stack: int
29: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
30: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 x I
0 31 1 array [I
0 31 2 y I
MethodParameters:
Name Flags
x
array
y
public static void testShiftEqualsReference(int, int[], int);
descriptor: (I[II)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 0
sipush -1024
iand
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
3: aload 1
arraylength
sipush -1024
iand
ifne 4
iconst_1
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
6: iload 0
ldc 4194303
iand
ifne 7
iconst_1
goto 8
StackMap locals:
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
9: iload 0
bipush 10
ishr
ifne 10
iconst_1
goto 11
StackMap locals:
StackMap stack:
10: iconst_0
StackMap locals:
StackMap stack: int
11: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
12: iload 0
iload 2
iushr
ifne 13
iconst_1
goto 14
StackMap locals:
StackMap stack:
13: iconst_0
StackMap locals:
StackMap stack: int
14: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
15: iload 0
iload 2
ishr
ifne 16
iconst_1
goto 17
StackMap locals:
StackMap stack:
16: iconst_0
StackMap locals:
StackMap stack: int
17: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
18: iload 0
iload 2
ishl
ifne 19
iconst_1
goto 20
StackMap locals:
StackMap stack:
19: iconst_0
StackMap locals:
StackMap stack: int
20: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
21: iload 0
iload 2
iushr
iconst_1
if_icmpne 22
iconst_1
goto 23
StackMap locals:
StackMap stack:
22: iconst_0
StackMap locals:
StackMap stack: int
23: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
24: iload 0
iload 2
ishr
iconst_1
if_icmpne 25
iconst_1
goto 26
StackMap locals:
StackMap stack:
25: iconst_0
StackMap locals:
StackMap stack: int
26: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
27: iload 0
iload 2
ishl
iconst_1
if_icmpne 28
iconst_1
goto 29
StackMap locals:
StackMap stack:
28: iconst_0
StackMap locals:
StackMap stack: int
29: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
30: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 x I
0 31 1 array [I
0 31 2 y I
MethodParameters:
Name Flags
x
array
y
public void testCompare();
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/IntegerEqualsCanonicalizerTest;
RuntimeInvisibleAnnotations:
Test()
public static void testCompareSnippet(int, int, int[], int[]);
descriptor: (II[I[I)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 0
istore 4
start local 4 1: aload 2
arraylength
istore 5
start local 5 2: aload 3
arraylength
istore 6
start local 6 3: iload 0
iload 4
if_icmpne 4
iconst_1
goto 5
StackMap locals: int int int
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
6: iload 0
iload 4
if_icmpeq 7
iconst_1
goto 8
StackMap locals:
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
9: iload 5
iconst_m1
iload 6
isub
if_icmpeq 10
iconst_1
goto 11
StackMap locals:
StackMap stack:
10: iconst_0
StackMap locals:
StackMap stack: int
11: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
12: iload 5
iconst_m1
iload 6
isub
if_icmpne 13
iconst_1
goto 14
StackMap locals:
StackMap stack:
13: iconst_0
StackMap locals:
StackMap stack: int
14: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
15: iload 0
iload 1
if_icmpne 16
iconst_1
goto 17
StackMap locals:
StackMap stack:
16: iconst_0
StackMap locals:
StackMap stack: int
17: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
18: iload 5
iload 6
if_icmpne 19
iconst_1
goto 20
StackMap locals:
StackMap stack:
19: iconst_0
StackMap locals:
StackMap stack: int
20: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
21: iload 5
iload 6
ineg
if_icmpne 22
iconst_1
goto 23
StackMap locals:
StackMap stack:
22: iconst_0
StackMap locals:
StackMap stack: int
23: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
24: 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 25 0 x I
0 25 1 y I
0 25 2 array1 [I
0 25 3 array2 [I
1 25 4 tempX I
2 25 5 array1Length I
3 25 6 array2Length I
MethodParameters:
Name Flags
x
y
array1
array2
public static void testCompareReference(int, int, int[], int[]);
descriptor: (II[I[I)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
arraylength
istore 4
start local 4 1: aload 3
arraylength
istore 5
start local 5 2: iconst_1
putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
3: iconst_0
putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
4: iconst_1
putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
5: iconst_0
putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
6: iload 0
iload 1
if_icmpne 7
iconst_1
goto 8
StackMap locals: int int
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
9: iload 4
iload 5
if_icmpne 10
iconst_1
goto 11
StackMap locals:
StackMap stack:
10: iconst_0
StackMap locals:
StackMap stack: int
11: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
12: iload 4
iload 5
ineg
if_icmpne 13
iconst_1
goto 14
StackMap locals:
StackMap stack:
13: iconst_0
StackMap locals:
StackMap stack: int
14: putstatic org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.field:I
15: 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 16 0 x I
0 16 1 y I
0 16 2 array1 [I
0 16 3 array2 [I
1 16 4 array1Length I
2 16 5 array2Length I
MethodParameters:
Name Flags
x
y
array1
array2
public static boolean testNormalIntegerTest(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
bipush 8
iand
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 a I
MethodParameters:
Name Flags
a
public static boolean testAlternateIntegerTest(int);
descriptor: (I)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
bipush 8
iand
bipush 8
if_icmpne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 a I
MethodParameters:
Name Flags
a
public void testIntegerTest();
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/IntegerEqualsCanonicalizerTest;
RuntimeInvisibleAnnotations:
Test()
private void test(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.getCanonicalizedGraph:(Ljava/lang/String;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 3
start local 3 1: aload 0
aload 2
invokevirtual org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.getCanonicalizedGraph:(Ljava/lang/String;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 4
start local 4 2: aload 0
aload 4
aload 3
invokevirtual org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.assertEquals:(Lorg/graalvm/compiler/nodes/StructuredGraph;Lorg/graalvm/compiler/nodes/StructuredGraph;)V
3: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/test/IntegerEqualsCanonicalizerTest;
0 4 1 snippet Ljava/lang/String;
0 4 2 referenceSnippet Ljava/lang/String;
1 4 3 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
2 4 4 referenceGraph Lorg/graalvm/compiler/nodes/StructuredGraph;
MethodParameters:
Name Flags
snippet
referenceSnippet
private org.graalvm.compiler.nodes.StructuredGraph getCanonicalizedGraph(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/graalvm/compiler/nodes/StructuredGraph;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 1
getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.YES:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
invokevirtual org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.parseEager:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 2
start local 2 1: new org.graalvm.compiler.phases.common.CanonicalizerPhase
dup
invokespecial org.graalvm.compiler.phases.common.CanonicalizerPhase.<init>:()V
aload 2
new org.graalvm.compiler.phases.tiers.PhaseContext
dup
aload 0
invokevirtual org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest.getProviders:()Lorg/graalvm/compiler/phases/util/Providers;
invokespecial org.graalvm.compiler.phases.tiers.PhaseContext.<init>:(Lorg/graalvm/compiler/phases/util/Providers;)V
invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
2: aload 2
getstatic org.graalvm.compiler.nodes.FrameState.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.snapshot:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 6
StackMap locals: org.graalvm.compiler.core.test.IntegerEqualsCanonicalizerTest java.lang.String org.graalvm.compiler.nodes.StructuredGraph top java.util.Iterator
StackMap stack:
3: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.nodes.FrameState
astore 3
start local 3 4: aload 3
aconst_null
invokevirtual org.graalvm.compiler.nodes.FrameState.replaceAtUsages:(Lorg/graalvm/compiler/graph/Node;)V
5: aload 3
invokevirtual org.graalvm.compiler.nodes.FrameState.safeDelete:()V
end local 3 6: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/graalvm/compiler/core/test/IntegerEqualsCanonicalizerTest;
0 8 1 snippet Ljava/lang/String;
1 8 2 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
4 6 3 state Lorg/graalvm/compiler/nodes/FrameState;
MethodParameters:
Name Flags
snippet
}
SourceFile: "IntegerEqualsCanonicalizerTest.java"
InnerClasses:
public final AllowAssumptions = org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions of org.graalvm.compiler.nodes.StructuredGraph