public class org.graalvm.compiler.core.test.ConditionalEliminationTest2 extends org.graalvm.compiler.core.test.ConditionalEliminationTestBase
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.core.test.ConditionalEliminationTest2
super_class: org.graalvm.compiler.core.test.ConditionalEliminationTestBase
{
public static java.lang.Object field;
descriptor: Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, 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.ConditionalEliminationTestBase.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2;
public static org.graalvm.compiler.core.test.ConditionalEliminationTest2$Entry search(org.graalvm.compiler.core.test.ConditionalEliminationTest2$Entry, java.lang.String, org.graalvm.compiler.core.test.ConditionalEliminationTest2$Entry);
descriptor: (Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$Entry;Ljava/lang/String;Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$Entry;)Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$Entry;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
astore 3
start local 3 1: goto 7
2: StackMap locals: org.graalvm.compiler.core.test.ConditionalEliminationTest2$Entry
StackMap stack:
aload 1
ifnull 5
aload 3
getfield org.graalvm.compiler.core.test.ConditionalEliminationTest2$Entry.name:Ljava/lang/String;
aload 1
if_acmpne 5
3: aconst_null
astore 3
4: goto 7
5: StackMap locals:
StackMap stack:
aload 3
checkcast org.graalvm.compiler.core.test.ConditionalEliminationTest2$EntryWithNext
getfield org.graalvm.compiler.core.test.ConditionalEliminationTest2$EntryWithNext.next:Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$Entry;
astore 4
start local 4 6: aload 4
astore 3
end local 4 7: StackMap locals:
StackMap stack:
aload 3
instanceof org.graalvm.compiler.core.test.ConditionalEliminationTest2$EntryWithNext
ifne 2
8: aload 3
ifnull 11
9: aload 3
getfield org.graalvm.compiler.core.test.ConditionalEliminationTest2$Entry.name:Ljava/lang/String;
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 11
10: aload 3
areturn
11: StackMap locals:
StackMap stack:
aload 3
aload 2
if_acmpne 13
12: aconst_null
areturn
13: StackMap locals:
StackMap stack:
aload 2
astore 3
14: goto 7
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 start Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$Entry;
0 15 1 name Ljava/lang/String;
0 15 2 alternative Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$Entry;
1 15 3 current Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$Entry;
6 7 4 next Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$Entry;
MethodParameters:
Name Flags
start
name
alternative
public static int testRedundantComparesSnippet(int[]);
descriptor: ([I)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
iconst_0
iaload
aload 0
iconst_1
iaload
iadd
aload 0
iconst_2
iaload
iadd
aload 0
iconst_3
iaload
iadd
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 array [I
MethodParameters:
Name Flags
array
public void testRedundantCompares();
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/ConditionalEliminationTest2;
RuntimeInvisibleAnnotations:
Test()
public static java.lang.String testInstanceOfCheckCastSnippet(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof org.graalvm.compiler.core.test.ConditionalEliminationTest2$Entry
ifeq 2
1: aload 0
checkcast org.graalvm.compiler.core.test.ConditionalEliminationTest2$Entry
getfield org.graalvm.compiler.core.test.ConditionalEliminationTest2$Entry.name:Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 e Ljava/lang/Object;
MethodParameters:
Name Flags
e
public void testInstanceOfCheckCastLowered();
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/ConditionalEliminationTest2;
RuntimeInvisibleAnnotations:
Test()
private void checkInstanceOfCount(java.lang.String, int);
descriptor: (Ljava/lang/String;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problem: \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/ConditionalEliminationTest2;
MethodParameters:
Name Flags
methodName
count
public static org.graalvm.compiler.core.test.ConditionalEliminationTest2$A testRedundantInstanceOfClass(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$A;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ifnull 2
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$A;
if_acmpne 2
1: aload 0
checkcast org.graalvm.compiler.core.test.ConditionalEliminationTest2$A
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 value Ljava/lang/Object;
MethodParameters:
Name Flags
value
public static java.lang.Object testRedundantInstanceOfArray(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ifnull 2
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc [Ljava/lang/Object;
if_acmpne 2
1: aload 0
checkcast java.lang.Object[]
iconst_0
aaload
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 value Ljava/lang/Object;
MethodParameters:
Name Flags
value
public static boolean testRedundantInstanceOfPrecise(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ifnull 2
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$A;
if_acmpne 2
1: aload 0
instanceof org.graalvm.compiler.core.test.ConditionalEliminationTest2$A
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 value Ljava/lang/Object;
MethodParameters:
Name Flags
value
public static boolean testRedundantInstanceOfImplicitNonNull(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$A;
if_acmpne 2
1: aload 0
instanceof org.graalvm.compiler.core.test.ConditionalEliminationTest2$A
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 value Ljava/lang/Object;
MethodParameters:
Name Flags
value
public void testRedundantInstanceOf();
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/ConditionalEliminationTest2;
RuntimeInvisibleAnnotations:
Test()
public static boolean testNonRedundantInstanceOfClass(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
instanceof org.graalvm.compiler.core.test.ConditionalEliminationTest2$A
ifeq 3
1: aload 0
ifnull 2
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc Lorg/graalvm/compiler/core/test/ConditionalEliminationTest2$A;
if_acmpne 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 value Ljava/lang/Object;
MethodParameters:
Name Flags
value
public static boolean testNonRedundantInstanceOfArray(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
instanceof java.lang.Object[]
ifeq 3
1: aload 0
ifnull 2
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc [Ljava/lang/Object;
if_acmpne 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 value Ljava/lang/Object;
MethodParameters:
Name Flags
value
public static boolean testNonRedundantInstanceOfImplicitNonNull(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
instanceof java.lang.Object[]
ifeq 3
1: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc [Ljava/lang/Object;
if_acmpne 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 value Ljava/lang/Object;
MethodParameters:
Name Flags
value
public void testNonRedundantInstanceOf();
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/ConditionalEliminationTest2;
RuntimeInvisibleAnnotations:
Test()
}
SourceFile: "ConditionalEliminationTest2.java"
NestMembers:
org.graalvm.compiler.core.test.ConditionalEliminationTest2$A org.graalvm.compiler.core.test.ConditionalEliminationTest2$B org.graalvm.compiler.core.test.ConditionalEliminationTest2$C org.graalvm.compiler.core.test.ConditionalEliminationTest2$Entry org.graalvm.compiler.core.test.ConditionalEliminationTest2$EntryWithNext
InnerClasses:
A = org.graalvm.compiler.core.test.ConditionalEliminationTest2$A of org.graalvm.compiler.core.test.ConditionalEliminationTest2
B = org.graalvm.compiler.core.test.ConditionalEliminationTest2$B of org.graalvm.compiler.core.test.ConditionalEliminationTest2
C = org.graalvm.compiler.core.test.ConditionalEliminationTest2$C of org.graalvm.compiler.core.test.ConditionalEliminationTest2
Entry = org.graalvm.compiler.core.test.ConditionalEliminationTest2$Entry of org.graalvm.compiler.core.test.ConditionalEliminationTest2
EntryWithNext = org.graalvm.compiler.core.test.ConditionalEliminationTest2$EntryWithNext of org.graalvm.compiler.core.test.ConditionalEliminationTest2