public class org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest extends org.graalvm.compiler.replacements.test.MethodSubstitutionTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest
super_class: org.graalvm.compiler.replacements.test.MethodSubstitutionTest
{
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/hotspot/test/HotSpotUnsafeSubstitutionTest;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.replacements.test.MethodSubstitutionTest.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/test/HotSpotUnsafeSubstitutionTest;
public void testSubstitution(java.lang.String, java.lang.Class<?>, java.lang.String, java.lang.Class<?>[], , [], []);
descriptor: (Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Object;[Ljava/lang/Object;[Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=13, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
aload 1
invokevirtual org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.getResolvedJavaMethod:(Ljava/lang/String;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
astore 8
start local 8 1: aload 0
aload 2
aload 3
aload 4
invokevirtual org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.getResolvedJavaMethod:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
astore 9
start local 9 2: aload 0
aload 8
invokevirtual org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.getCode:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Ljdk/vm/ci/code/InstalledCode;
astore 10
start local 10 3: getstatic org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.$assertionsDisabled:Z
ifne 4
aload 10
ifnonnull 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals: jdk.vm.ci.meta.ResolvedJavaMethod jdk.vm.ci.meta.ResolvedJavaMethod jdk.vm.ci.code.InstalledCode
StackMap stack:
aload 0
aload 9
aload 5
aload 6
invokevirtual org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.invokeSafe:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
astore 11
start local 11 5: aload 0
aload 8
aconst_null
aload 7
invokevirtual org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.invokeSafe:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
astore 12
start local 12 6: aload 0
aload 11
aload 12
invokevirtual org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
7: aload 0
aload 9
aload 5
aload 6
invokevirtual org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.invokeSafe:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
astore 11
8: aload 10
aload 7
invokestatic org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.executeVarargsSafe:(Ljdk/vm/ci/code/InstalledCode;[Ljava/lang/Object;)Ljava/lang/Object;
astore 12
9: aload 0
aload 11
aload 12
invokevirtual org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.assertDeepEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
10: return
end local 12 end local 11 end local 10 end local 9 end local 8 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 11 0 this Lorg/graalvm/compiler/hotspot/test/HotSpotUnsafeSubstitutionTest;
0 11 1 testMethodName Ljava/lang/String;
0 11 2 holder Ljava/lang/Class<*>;
0 11 3 methodName Ljava/lang/String;
0 11 4 parameterTypes [Ljava/lang/Class;
0 11 5 receiver Ljava/lang/Object;
0 11 6 args1 [Ljava/lang/Object;
0 11 7 args2 [Ljava/lang/Object;
1 11 8 testMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
2 11 9 originalMethod Ljdk/vm/ci/meta/ResolvedJavaMethod;
3 11 10 code Ljdk/vm/ci/code/InstalledCode;
5 11 11 expected Ljava/lang/Object;
6 11 12 actual Ljava/lang/Object;
Signature: (Ljava/lang/String;Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/Class<*>;Ljava/lang/Object;[Ljava/lang/Object;[Ljava/lang/Object;)V
MethodParameters:
Name Flags
testMethodName
holder
methodName
parameterTypes
receiver
args1
args2
public void testUnsafeSubstitutions();
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/hotspot/test/HotSpotUnsafeSubstitutionTest;
Exceptions:
throws java.lang.Exception
RuntimeInvisibleAnnotations:
Test()
public void unsafeCopyMemory(java.lang.Object, long, java.lang.Object, long, long);
descriptor: (Ljava/lang/Object;JLjava/lang/Object;JJ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 4 start local 5 start local 7 0: getstatic org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.UNSAFE:Lsun/misc/Unsafe;
aload 1
lload 2
aload 4
lload 5
lload 7
invokevirtual sun.misc.Unsafe.copyMemory:(Ljava/lang/Object;JLjava/lang/Object;JJ)V
1: return
end local 7 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/hotspot/test/HotSpotUnsafeSubstitutionTest;
0 2 1 srcBase Ljava/lang/Object;
0 2 2 srcOffset J
0 2 4 dstBase Ljava/lang/Object;
0 2 5 dstOffset J
0 2 7 bytes J
MethodParameters:
Name Flags
srcBase
srcOffset
dstBase
dstOffset
bytes
public byte[] testCopyMemorySnippet(long, int);
descriptor: (JI)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=5, args_size=3
start local 0 start local 1 start local 3 0: iload 3
newarray 8
astore 4
start local 4 1: getstatic org.graalvm.compiler.hotspot.test.HotSpotUnsafeSubstitutionTest.UNSAFE:Lsun/misc/Unsafe;
aconst_null
lload 1
aload 4
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 3
i2l
invokevirtual sun.misc.Unsafe.copyMemory:(Ljava/lang/Object;JLjava/lang/Object;JJ)V
2: aload 4
areturn
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/test/HotSpotUnsafeSubstitutionTest;
0 3 1 src J
0 3 3 bytes I
1 3 4 result [B
MethodParameters:
Name Flags
src
bytes
public void testCopyMemory();
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/hotspot/test/HotSpotUnsafeSubstitutionTest;
RuntimeInvisibleAnnotations:
Test()
}
SourceFile: "HotSpotUnsafeSubstitutionTest.java"