public class org.graalvm.compiler.test.GraalTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.test.GraalTest
super_class: java.lang.Object
{
public static final sun.misc.Unsafe UNSAFE;
descriptor: Lsun/misc/Unsafe;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final boolean Java8OrEarlier;
descriptor: Z
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=1, args_size=0
0: ldc Lsun/misc/Unsafe;
ldc "theUnsafe"
invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
astore 0
start local 0 1: aload 0
iconst_1
invokevirtual java.lang.reflect.Field.setAccessible:(Z)V
2: aload 0
ldc Lsun/misc/Unsafe;
invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast sun.misc.Unsafe
putstatic org.graalvm.compiler.test.GraalTest.UNSAFE:Lsun/misc/Unsafe;
end local 0 3: goto 6
StackMap locals:
StackMap stack: java.lang.Exception
4: astore 0
start local 0 5: new java.lang.RuntimeException
dup
ldc "exception while trying to get Unsafe"
aload 0
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 0 6: StackMap locals:
StackMap stack:
ldc "java.specification.version"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
ldc "1.9"
invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
ifge 7
iconst_1
goto 8
StackMap locals:
StackMap stack:
7: iconst_0
StackMap locals:
StackMap stack: int
8: putstatic org.graalvm.compiler.test.GraalTest.Java8OrEarlier:Z
return
LocalVariableTable:
Start End Slot Name Signature
1 3 0 theUnsafe Ljava/lang/reflect/Field;
5 6 0 e Ljava/lang/Exception;
Exception table:
from to target type
0 3 4 Class java.lang.Exception
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/test/GraalTest;
protected java.lang.reflect.Method getMethod(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/reflect/Method;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
invokevirtual org.graalvm.compiler.test.GraalTest.getMethod:(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Method;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/test/GraalTest;
0 1 1 methodName Ljava/lang/String;
MethodParameters:
Name Flags
methodName
protected java.lang.reflect.Method getMethod(java.lang.Class<?>, java.lang.String);
descriptor: (Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/reflect/Method;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tAssert cannot be resolved\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/test/GraalTest;
Signature: (Ljava/lang/Class<*>;Ljava/lang/String;)Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
clazz
methodName
protected java.lang.reflect.Method getMethod(java.lang.Class<?>, java.lang.String, java.lang.Class<?>[]);
descriptor: (Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
aload 3
invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
pop
3: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "method not found: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
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/test/GraalTest;
0 4 1 clazz Ljava/lang/Class<*>;
0 4 2 methodName Ljava/lang/String;
0 4 3 parameterTypes [Ljava/lang/Class;
Exception table:
from to target type
0 1 2 Class java.lang.NoSuchMethodException
0 1 2 Class java.lang.SecurityException
Signature: (Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/Class<*>;)Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
clazz
methodName
parameterTypes
protected void assertDeepEquals(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aconst_null
aload 1
aload 2
invokevirtual org.graalvm.compiler.test.GraalTest.assertDeepEquals:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/test/GraalTest;
0 2 1 expected Ljava/lang/Object;
0 2 2 actual Ljava/lang/Object;
MethodParameters:
Name Flags
expected
actual
protected void assertDeepEquals(java.lang.String, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokevirtual org.graalvm.compiler.test.GraalTest.ulpsDelta:()I
ifle 3
1: aload 0
aload 1
aload 2
aload 3
aload 0
invokevirtual org.graalvm.compiler.test.GraalTest.ulpsDelta:()I
invokevirtual org.graalvm.compiler.test.GraalTest.assertDeepEquals:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;I)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
aload 0
invokevirtual org.graalvm.compiler.test.GraalTest.equalFloatsOrDoublesDelta:()D
invokevirtual org.graalvm.compiler.test.GraalTest.assertDeepEquals:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;D)V
4: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/test/GraalTest;
0 5 1 message Ljava/lang/String;
0 5 2 expected Ljava/lang/Object;
0 5 3 actual Ljava/lang/Object;
MethodParameters:
Name Flags
message
expected
actual
protected void assertDeepEquals(java.lang.String, java.lang.Object, java.lang.Object, double);
descriptor: (Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;D)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=6, args_size=5
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tAssert cannot be resolved\n\tAssert cannot be resolved\n\tAssert cannot be resolved\n\tAssert cannot be resolved\n\tAssert cannot be resolved\n\tAssert cannot be resolved\n\tAssert cannot be resolved\n\tAssert cannot be resolved\n\tAssert cannot be resolved\n\tAssert cannot be resolved\n\tExactComparisonCriteria cannot be resolved to a type\n\tComparisonCriteria cannot be resolved to a type\n\tThe method assertElementsEqual(Object, Object) of type new ComparisonCriteria(){} must override or implement a supertype method\n\tAssert cannot be resolved\n\tAssert cannot be resolved\n\tAssert cannot be resolved\n\tAssert cannot be resolved\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/test/GraalTest;
MethodParameters:
Name Flags
message
expected
actual
delta
protected void assertDeepEquals(java.lang.String, java.lang.Object, java.lang.Object, int);
descriptor: (Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=5
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tComparisonCriteria cannot be resolved to a type\n\tComparisonCriteria cannot be resolved to a type\n\tThe method assertElementsEqual(Object, Object) of type new ComparisonCriteria(){} must override or implement a supertype method\n\tAssert cannot be resolved\n\tComparisonCriteria cannot be resolved to a type\n\tComparisonCriteria cannot be resolved to a type\n\tThe method assertElementsEqual(Object, Object) of type new ComparisonCriteria(){} must override or implement a supertype method\n\tAssert cannot be resolved\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/test/GraalTest;
MethodParameters:
Name Flags
message
expected
actual
ulpsDelta
protected double equalFloatsOrDoublesDelta();
descriptor: ()D
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: dconst_0
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/test/GraalTest;
protected int ulpsDelta();
descriptor: ()I
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/test/GraalTest;
public static void fail(java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 3
1: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
astore 2
start local 2 2: goto 4
end local 2 3: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
aload 0
aload 1
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
astore 2
start local 2 4: StackMap locals: java.lang.AssertionError
StackMap stack:
aload 2
invokevirtual java.lang.AssertionError.getStackTrace:()[Ljava/lang/StackTraceElement;
astore 3
start local 3 5: iconst_1
istore 4
start local 4 6: ldc Lorg/graalvm/compiler/test/GraalTest;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 5
start local 5 7: goto 9
8: StackMap locals: java.lang.StackTraceElement[] int java.lang.String
StackMap stack:
iinc 4 1
9: StackMap locals:
StackMap stack:
iload 4
aload 3
arraylength
if_icmpge 10
aload 3
iload 4
aaload
invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
aload 5
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
aload 3
iload 4
aaload
invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
ldc "assertTrue"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 8
aload 3
iload 4
aaload
invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
ldc "assertFalse"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 8
10: StackMap locals:
StackMap stack:
aload 2
aload 3
iload 4
aload 3
arraylength
invokestatic java.util.Arrays.copyOfRange:([Ljava/lang/Object;II)[Ljava/lang/Object;
checkcast java.lang.StackTraceElement[]
invokevirtual java.lang.AssertionError.setStackTrace:([Ljava/lang/StackTraceElement;)V
11: aload 2
athrow
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 12 0 message Ljava/lang/String;
0 12 1 objects [Ljava/lang/Object;
2 3 2 e Ljava/lang/AssertionError;
4 12 2 e Ljava/lang/AssertionError;
5 12 3 trace [Ljava/lang/StackTraceElement;
6 12 4 start I
7 12 5 thisClassName Ljava/lang/String;
MethodParameters:
Name Flags
message
objects
public static void assertTrue(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
aload 0
iconst_0
anewarray java.lang.Object
invokestatic org.graalvm.compiler.test.GraalTest.assertTrue:(ZLjava/lang/String;[Ljava/lang/Object;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 message Ljava/lang/String;
0 2 1 condition Z
MethodParameters:
Name Flags
message
condition
public static void assertTrue(boolean);
descriptor: (Z)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iload 0
aconst_null
iconst_0
anewarray java.lang.Object
invokestatic org.graalvm.compiler.test.GraalTest.assertTrue:(ZLjava/lang/String;[Ljava/lang/Object;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 condition Z
MethodParameters:
Name Flags
condition
public static void assertFalse(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: aload 0
iconst_0
anewarray java.lang.Object
invokestatic org.graalvm.compiler.test.GraalTest.assertTrue:(ZLjava/lang/String;[Ljava/lang/Object;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 message Ljava/lang/String;
0 4 1 condition Z
MethodParameters:
Name Flags
message
condition
public static void assertFalse(boolean);
descriptor: (Z)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: iload 0
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: aconst_null
iconst_0
anewarray java.lang.Object
invokestatic org.graalvm.compiler.test.GraalTest.assertTrue:(ZLjava/lang/String;[Ljava/lang/Object;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 condition Z
MethodParameters:
Name Flags
condition
public static void assertTrue(boolean, java.lang.String, java.lang.Object[]);
descriptor: (ZLjava/lang/String;[Ljava/lang/Object;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 0
ifne 2
1: aload 1
aload 2
invokestatic org.graalvm.compiler.test.GraalTest.fail:(Ljava/lang/String;[Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 condition Z
0 3 1 message Ljava/lang/String;
0 3 2 objects [Ljava/lang/Object;
MethodParameters:
Name Flags
condition
message
objects
public static void assertFalse(boolean, java.lang.String, java.lang.Object[]);
descriptor: (ZLjava/lang/String;[Ljava/lang/Object;)V
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 0
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: aload 1
aload 2
invokestatic org.graalvm.compiler.test.GraalTest.assertTrue:(ZLjava/lang/String;[Ljava/lang/Object;)V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 condition Z
0 4 1 message Ljava/lang/String;
0 4 2 objects [Ljava/lang/Object;
MethodParameters:
Name Flags
condition
message
objects
}
SourceFile: "GraalTest.java"
NestMembers:
org.graalvm.compiler.test.GraalTest$1 org.graalvm.compiler.test.GraalTest$2 org.graalvm.compiler.test.GraalTest$3 org.graalvm.compiler.test.GraalTest$MultiCauseAssertionError
InnerClasses:
public MultiCauseAssertionError = org.graalvm.compiler.test.GraalTest$MultiCauseAssertionError of org.graalvm.compiler.test.GraalTest