public class org.graalvm.compiler.core.test.UnsafeVirtualizationTest 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.UnsafeVirtualizationTest
super_class: org.graalvm.compiler.core.test.GraalCompilerTest
{
private static boolean[] FT;
descriptor: [Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static int sideEffectField;
descriptor: I
flags: (0x0008) ACC_STATIC
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=4, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/core/test/UnsafeVirtualizationTest;
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.core.test.UnsafeVirtualizationTest.$assertionsDisabled:Z
3: iconst_2
newarray 4
dup
iconst_1
iconst_1
bastore
putstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.FT:[Z
4: 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.core.test.GraalCompilerTest.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/test/UnsafeVirtualizationTest;
private static void sideEffect();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_5
putstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffectField:I
1: return
LocalVariableTable:
Start End Slot Name Signature
public static int unsafeSnippet1(double, boolean);
descriptor: (DZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: new org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
dup
invokespecial org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.<init>:()V
astore 3
start local 3 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
dload 0
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
2: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
3: iload 2
ifeq 5
4: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
5: StackMap locals: org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
invokevirtual sun.misc.Unsafe.getInt:(Ljava/lang/Object;J)I
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset2:J
invokevirtual sun.misc.Unsafe.getInt:(Ljava/lang/Object;J)I
iadd
ireturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i1 D
0 6 2 c Z
1 6 3 a Lorg/graalvm/compiler/core/test/ea/EATestBase$TestClassInt;
MethodParameters:
Name Flags
i1
c
public static long unsafeSnippet2a(int, boolean);
descriptor: (IZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
dup
invokespecial org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.<init>:()V
astore 2
start local 2 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
iload 0
i2d
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
2: aload 2
iload 0
invokevirtual org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.setFirstField:(I)V
3: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
4: iload 1
ifeq 6
5: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
6: StackMap locals: org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 i1 I
0 7 1 c Z
1 7 2 a Lorg/graalvm/compiler/core/test/ea/EATestBase$TestClassInt;
MethodParameters:
Name Flags
i1
c
public static long unsafeSnippet2b(int, boolean);
descriptor: (IZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
dup
invokespecial org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.<init>:()V
astore 2
start local 2 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
iload 0
i2d
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
2: aload 2
iload 0
invokevirtual org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.setSecondField:(I)V
3: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
4: iload 1
ifeq 6
5: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
6: StackMap locals: org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 i1 I
0 7 1 c Z
1 7 2 a Lorg/graalvm/compiler/core/test/ea/EATestBase$TestClassInt;
MethodParameters:
Name Flags
i1
c
public static long unsafeSnippet3a(int, boolean);
descriptor: (IZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
dup
invokespecial org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.<init>:()V
astore 2
start local 2 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
iload 0
i2d
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
2: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
iload 0
invokevirtual sun.misc.Unsafe.putInt:(Ljava/lang/Object;JI)V
3: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
4: iload 1
ifeq 6
5: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
6: StackMap locals: org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 i1 I
0 7 1 c Z
1 7 2 a Lorg/graalvm/compiler/core/test/ea/EATestBase$TestClassInt;
MethodParameters:
Name Flags
i1
c
public static long unsafeSnippet3b(int, boolean);
descriptor: (IZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: new org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
dup
invokespecial org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.<init>:()V
astore 2
start local 2 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
iload 0
i2d
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
2: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset2:J
iload 0
invokevirtual sun.misc.Unsafe.putInt:(Ljava/lang/Object;JI)V
3: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
4: iload 1
ifeq 6
5: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
6: StackMap locals: org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 i1 I
0 7 1 c Z
1 7 2 a Lorg/graalvm/compiler/core/test/ea/EATestBase$TestClassInt;
MethodParameters:
Name Flags
i1
c
public static int unsafeSnippet4(double, boolean);
descriptor: (DZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: new org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
dup
invokespecial org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.<init>:()V
astore 3
start local 3 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
dload 0
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
2: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
dload 0
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
3: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
4: iload 2
ifeq 6
5: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
6: StackMap locals: org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
invokevirtual sun.misc.Unsafe.getInt:(Ljava/lang/Object;J)I
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset2:J
invokevirtual sun.misc.Unsafe.getInt:(Ljava/lang/Object;J)I
iadd
ireturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 i1 D
0 7 2 c Z
1 7 3 a Lorg/graalvm/compiler/core/test/ea/EATestBase$TestClassInt;
MethodParameters:
Name Flags
i1
c
public static int unsafeSnippet5(long, boolean);
descriptor: (JZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: iconst_2
newarray 10
astore 3
start local 3 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_INT_BASE_OFFSET:I
i2l
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
2: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
3: iload 2
ifeq 5
4: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
5: StackMap locals: int[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
i2l
ldc 6
lmul
getstatic sun.misc.Unsafe.ARRAY_INT_BASE_OFFSET:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getShort:(Ljava/lang/Object;J)S
ireturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i1 J
0 6 2 c Z
1 6 3 t [I
MethodParameters:
Name Flags
i1
c
public static int unsafeSnippet6(long, boolean);
descriptor: (JZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: bipush 8
newarray 8
astore 3
start local 3 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
2: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
3: iload 2
ifeq 5
4: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
5: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
i2l
ldc 6
lmul
getstatic sun.misc.Unsafe.ARRAY_INT_BASE_OFFSET:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getShort:(Ljava/lang/Object;J)S
ireturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i1 J
0 6 2 c Z
1 6 3 b [B
MethodParameters:
Name Flags
i1
c
public static int unsafeSnippet7(int, boolean);
descriptor: (IZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: iconst_4
newarray 8
astore 2
start local 2 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 0
invokevirtual sun.misc.Unsafe.putInt:(Ljava/lang/Object;JI)V
2: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
3: iload 1
ifeq 5
4: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
5: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
i2l
lconst_0
lmul
getstatic sun.misc.Unsafe.ARRAY_INT_BASE_OFFSET:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getShort:(Ljava/lang/Object;J)S
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i1 I
0 6 1 c Z
1 6 2 b [B
MethodParameters:
Name Flags
i1
c
public static int unsafeSnippet8(long, int, boolean);
descriptor: (JIZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 2 start local 3 0: bipush 8
newarray 8
astore 4
start local 4 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
2: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iconst_4
getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
imul
i2l
ladd
iload 2
invokevirtual sun.misc.Unsafe.putInt:(Ljava/lang/Object;JI)V
3: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
4: iload 3
ifeq 6
5: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
6: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
i2l
ldc 2
lmul
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getShort:(Ljava/lang/Object;J)S
ireturn
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 i1 J
0 7 2 i2 I
0 7 3 c Z
1 7 4 b [B
MethodParameters:
Name Flags
i1
i2
c
public static int unsafeSnippet9(long, short, boolean);
descriptor: (JSZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 2 start local 3 0: bipush 8
newarray 8
astore 4
start local 4 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
2: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iconst_4
getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
imul
i2l
ladd
iload 2
invokevirtual sun.misc.Unsafe.putShort:(Ljava/lang/Object;JS)V
3: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
4: iload 3
ifeq 6
5: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
6: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
i2l
ldc 6
lmul
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getShort:(Ljava/lang/Object;J)S
ireturn
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 i1 J
0 7 2 i2 S
0 7 3 c Z
1 7 4 b [B
MethodParameters:
Name Flags
i1
i2
c
public static int unsafeSnippet10(double, boolean);
descriptor: (DZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: bipush 8
newarray 8
astore 3
start local 3 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
dload 0
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
2: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
3: iload 2
ifeq 5
4: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
5: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
i2l
ldc 2
lmul
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getShort:(Ljava/lang/Object;J)S
ireturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i1 D
0 6 2 c Z
1 6 3 b [B
MethodParameters:
Name Flags
i1
c
public static float unsafeSnippet11(double, boolean);
descriptor: (DZ)F
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: bipush 8
newarray 8
astore 3
start local 3 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
dload 0
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
2: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
3: iload 2
ifeq 5
4: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
5: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
i2l
ldc 4
lmul
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getFloat:(Ljava/lang/Object;J)F
freturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i1 D
0 6 2 c Z
1 6 3 b [B
MethodParameters:
Name Flags
i1
c
public static long unsafeSnippet12(double, boolean);
descriptor: (DZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: bipush 8
newarray 8
astore 3
start local 3 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
dload 0
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
2: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
3: iload 2
ifeq 5
4: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
5: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i1 D
0 6 2 c Z
1 6 3 b [B
MethodParameters:
Name Flags
i1
c
public static short unsafeSnippet13(short, boolean);
descriptor: (SZ)S
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: bipush 8
newarray 8
astore 2
start local 2 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 0
invokevirtual sun.misc.Unsafe.putShort:(Ljava/lang/Object;JS)V
2: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
3: iload 1
ifeq 5
4: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
5: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
invokevirtual sun.misc.Unsafe.getShort:(Ljava/lang/Object;J)S
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i1 S
0 6 1 c Z
1 6 2 b [B
MethodParameters:
Name Flags
i1
c
public static int unsafeSnippet14(long, int, boolean);
descriptor: (JIZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 2 start local 3 0: iconst_2
newarray 10
astore 4
start local 4 1: iload 2
i2l
lload 0
lcmp
ifge 4
2: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
getstatic sun.misc.Unsafe.ARRAY_INT_BASE_OFFSET:I
i2l
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
3: goto 5
4: StackMap locals: int[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
getstatic sun.misc.Unsafe.ARRAY_INT_BASE_OFFSET:I
i2l
iload 2
invokevirtual sun.misc.Unsafe.putInt:(Ljava/lang/Object;JI)V
5: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
6: iload 3
ifeq 8
7: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
8: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
i2l
ldc 6
lmul
getstatic sun.misc.Unsafe.ARRAY_INT_BASE_OFFSET:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getShort:(Ljava/lang/Object;J)S
ireturn
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 l J
0 9 2 i I
0 9 3 c Z
1 9 4 t [I
MethodParameters:
Name Flags
l
i
c
public static int unsafeSnippet15(long, boolean);
descriptor: (JZ)I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: bipush 8
newarray 8
astore 3
start local 3 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
2: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
3: iload 2
ifeq 5
4: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
5: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
invokevirtual sun.misc.Unsafe.getShort:(Ljava/lang/Object;J)S
ireturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i1 J
0 6 2 c Z
1 6 3 b [B
MethodParameters:
Name Flags
i1
c
private static long getUnsafeByteArrayOffset(int);
descriptor: (I)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
i2l
iload 0
i2l
lmul
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
ladd
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 i I
MethodParameters:
Name Flags
i
public static byte[] unsafeSnippet16(long, int, short, double, float, boolean);
descriptor: (JISDFZ)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=9, args_size=6
start local 0 start local 2 start local 3 start local 4 start local 6 start local 7 0: sipush 128
newarray 8
astore 8
start local 8 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 8
bipush 8
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
2: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 8
bipush 20
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
iload 2
invokevirtual sun.misc.Unsafe.putInt:(Ljava/lang/Object;JI)V
3: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 8
bipush 26
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
iload 3
invokevirtual sun.misc.Unsafe.putShort:(Ljava/lang/Object;JS)V
4: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 8
bipush 32
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
dload 4
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
5: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 8
bipush 44
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
fload 6
invokevirtual sun.misc.Unsafe.putFloat:(Ljava/lang/Object;JF)V
6: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
7: iload 7
ifeq 9
8: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
9: StackMap locals: byte[]
StackMap stack:
aload 8
areturn
end local 8 end local 7 end local 6 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 l J
0 10 2 i I
0 10 3 s S
0 10 4 d D
0 10 6 f F
0 10 7 c Z
1 10 8 b [B
MethodParameters:
Name Flags
l
i
s
d
f
c
public static long unsafeSnippet17(long, boolean);
descriptor: (JZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: bipush 8
newarray 8
astore 3
start local 3 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
2: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
3: iload 2
ifeq 5
4: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
5: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i1 J
0 6 2 c Z
1 6 3 t [B
MethodParameters:
Name Flags
i1
c
public static long unsafeSnippet18(int, boolean);
descriptor: (IZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: bipush 8
newarray 8
astore 2
start local 2 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
iconst_3
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
iload 0
invokevirtual sun.misc.Unsafe.putInt:(Ljava/lang/Object;JI)V
2: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
3: iload 1
ifeq 5
4: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
5: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 2
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 i1 I
0 6 1 c Z
1 6 2 t [B
MethodParameters:
Name Flags
i1
c
public static long unsafeSnippet19(long, long, boolean);
descriptor: (JJZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 2 start local 4 0: bipush 16
newarray 8
astore 5
start local 5 1: lload 0
lload 2
lcmp
ifge 4
2: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 5
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
3: goto 5
4: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 5
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
lload 2
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
5: StackMap locals:
StackMap stack:
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
6: iload 4
ifeq 8
7: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
8: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 5
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 5 end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 l1 J
0 9 2 l2 J
0 9 4 c Z
1 9 5 t [B
MethodParameters:
Name Flags
l1
l2
c
public static long unsafeSnippet20(long, int, boolean);
descriptor: (JIZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 2 start local 3 0: bipush 16
newarray 8
astore 4
start local 4 1: lload 0
iload 2
i2l
lcmp
ifge 4
2: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
3: goto 5
4: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
iload 2
invokevirtual sun.misc.Unsafe.putInt:(Ljava/lang/Object;JI)V
5: StackMap locals:
StackMap stack:
iload 3
ifeq 7
6: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
7: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 4
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 l1 J
0 8 2 i2 I
0 8 3 c Z
1 8 4 t [B
MethodParameters:
Name Flags
l1
i2
c
public static long unsafeSnippet21(long, boolean);
descriptor: (JZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 2 0: bipush 16
newarray 8
astore 3
start local 3 1: lload 0
lconst_0
lcmp
ifge 4
2: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
3: goto 5
4: StackMap locals: byte[]
StackMap stack:
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
5: StackMap locals:
StackMap stack:
iload 2
ifeq 7
6: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
7: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 3
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 l1 J
0 8 2 c Z
1 8 3 t [B
MethodParameters:
Name Flags
l1
c
public static long unsafeSnippet22(long, double, boolean);
descriptor: (JDZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 2 start local 4 0: bipush 16
newarray 8
astore 5
start local 5 1: lload 0
l2d
dload 2
dcmpg
ifge 4
2: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 5
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
3: goto 5
4: StackMap locals: byte[]
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 5
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
dload 2
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
5: StackMap locals:
StackMap stack:
iload 4
ifeq 7
6: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
7: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 5
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 5 end local 4 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 l1 J
0 8 2 d1 D
0 8 4 c Z
1 8 5 t [B
MethodParameters:
Name Flags
l1
d1
c
public static long unsafeSnippet23(long, short, float, byte[][], boolean);
descriptor: (JSF[[BZ)J
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=7, args_size=5
start local 0 start local 2 start local 3 start local 4 start local 5 0: bipush 16
newarray 8
astore 6
start local 6 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 6
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
lload 0
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
2: iload 2
i2f
fload 3
fcmpg
ifge 4
3: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 6
bipush 12
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
iconst_0
invokevirtual sun.misc.Unsafe.putShort:(Ljava/lang/Object;JS)V
4: StackMap locals: byte[]
StackMap stack:
aload 4
iconst_0
aload 6
aastore
5: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 6
bipush 12
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
fload 3
invokevirtual sun.misc.Unsafe.putFloat:(Ljava/lang/Object;JF)V
6: invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.sideEffect:()V
7: iload 5
ifeq 9
8: invokestatic org.graalvm.compiler.api.directives.GraalDirectives.deoptimize:()V
9: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.UNSAFE:Lsun/misc/Unsafe;
aload 6
iconst_0
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getUnsafeByteArrayOffset:(I)J
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 l1 J
0 10 2 s1 S
0 10 3 f1 F
0 10 4 box [[B
0 10 5 c Z
1 10 6 t [B
MethodParameters:
Name Flags
l1
s1
f1
box
c
public void testUnsafePEA01();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA02();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA03();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA04();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA05();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA06();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA07();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA08();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA09();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA10();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA11();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA12();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA13();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA14();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA15();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA16();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA17();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA18();
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\tAssume 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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA19();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA20();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA21();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA22();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
public void testUnsafePEA23();
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/UnsafeVirtualizationTest;
RuntimeInvisibleAnnotations:
Test()
private void performTest(java.lang.String, boolean, boolean, java.lang.Object[]);
descriptor: (Ljava/lang/String;ZZ[Ljava/lang/Object;)V
flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
Code:
stack=6, locals=14, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 4
aload 4
arraylength
iconst_1
iadd
invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
astore 5
start local 5 1: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.FT:[Z
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 10
StackMap locals: org.graalvm.compiler.core.test.UnsafeVirtualizationTest java.lang.String int int java.lang.Object[] java.lang.Object[] top int int boolean[]
StackMap stack:
2: aload 9
iload 7
baload
istore 6
start local 6 3: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.FT:[Z
dup
astore 13
arraylength
istore 12
iconst_0
istore 11
goto 8
StackMap locals: org.graalvm.compiler.core.test.UnsafeVirtualizationTest java.lang.String int int java.lang.Object[] java.lang.Object[] int int int boolean[] top int int boolean[]
StackMap stack:
4: aload 13
iload 11
baload
istore 10
start local 10 5: aload 5
aload 4
arraylength
iload 10
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
6: aload 0
aload 1
iload 6
iload 2
iload 3
aload 5
invokevirtual org.graalvm.compiler.core.test.UnsafeVirtualizationTest.testPartialEscapeReadElimination:(Ljava/lang/String;ZZZ[Ljava/lang/Object;)V
end local 10 7: iinc 11 1
StackMap locals:
StackMap stack:
8: iload 11
iload 12
if_icmplt 4
end local 6 9: iinc 7 1
StackMap locals: org.graalvm.compiler.core.test.UnsafeVirtualizationTest java.lang.String int int java.lang.Object[] java.lang.Object[] top int int boolean[]
StackMap stack:
10: iload 7
iload 8
if_icmplt 2
11: 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 12 0 this Lorg/graalvm/compiler/core/test/UnsafeVirtualizationTest;
0 12 1 snippet Ljava/lang/String;
0 12 2 shouldEscapeRead Z
0 12 3 shouldEscapeWrite Z
0 12 4 args [Ljava/lang/Object;
1 12 5 boolArgs [Ljava/lang/Object;
3 9 6 b1 Z
5 7 10 b2 Z
MethodParameters:
Name Flags
snippet
shouldEscapeRead
shouldEscapeWrite
args
public void testPartialEscapeReadElimination(java.lang.String, boolean, boolean, boolean, java.lang.Object[]);
descriptor: (Ljava/lang/String;ZZZ[Ljava/lang/Object;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=7, locals=20, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.$assertionsDisabled:Z
ifne 1
getstatic org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt.fieldOffset1:J
ldc 8
lrem
lconst_0
lcmp
ifeq 1
new java.lang.AssertionError
dup
ldc "First of the two int-fields must be 8-byte aligned"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getResolvedJavaMethod:(Ljava/lang/String;)Ljdk/vm/ci/meta/ResolvedJavaMethod;
astore 6
start local 6 2: aload 0
aload 1
getstatic org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions.NO:Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;
invokevirtual org.graalvm.compiler.core.test.UnsafeVirtualizationTest.parseEager:(Ljava/lang/String;Lorg/graalvm/compiler/nodes/StructuredGraph$AllowAssumptions;)Lorg/graalvm/compiler/nodes/StructuredGraph;
astore 7
start local 7 3: aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getOptions:()Lorg/graalvm/compiler/options/OptionValues;
astore 8
start local 8 4: aload 0
invokevirtual org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getDefaultHighTierContext:()Lorg/graalvm/compiler/phases/tiers/HighTierContext;
astore 9
start local 9 5: aload 0
invokevirtual org.graalvm.compiler.core.test.UnsafeVirtualizationTest.createCanonicalizerPhase:()Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
astore 10
start local 10 6: iload 2
ifeq 8
7: aload 10
aload 7
aload 9
invokevirtual org.graalvm.compiler.phases.common.CanonicalizerPhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
8: StackMap locals: org.graalvm.compiler.core.test.UnsafeVirtualizationTest java.lang.String int int int java.lang.Object[] jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.options.OptionValues org.graalvm.compiler.nodes.spi.CoreProviders org.graalvm.compiler.phases.common.CanonicalizerPhase
StackMap stack:
aload 0
aload 6
aconst_null
aload 5
invokevirtual org.graalvm.compiler.core.test.UnsafeVirtualizationTest.executeExpected:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljava/lang/Object;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
astore 11
start local 11 9: aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/extended/RawLoadNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
istore 12
start local 12 10: aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/extended/RawStoreNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
istore 13
start local 13 11: new org.graalvm.compiler.virtual.phases.ea.PartialEscapePhase
dup
iconst_1
iconst_1
aload 10
aconst_null
aload 8
invokespecial org.graalvm.compiler.virtual.phases.ea.PartialEscapePhase.<init>:(ZZLorg/graalvm/compiler/phases/common/CanonicalizerPhase;Lorg/graalvm/compiler/phases/BasePhase;Lorg/graalvm/compiler/options/OptionValues;)V
aload 7
aload 9
invokevirtual org.graalvm.compiler.virtual.phases.ea.PartialEscapePhase.apply:(Lorg/graalvm/compiler/nodes/StructuredGraph;Ljava/lang/Object;)V
12: iconst_1
istore 14
start local 14 13: getstatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.$assertionsDisabled:Z
ifne 14
aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
iconst_1
if_icmpeq 14
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
14: StackMap locals: org.graalvm.compiler.core.test.UnsafeVirtualizationTest java.lang.String int int int java.lang.Object[] jdk.vm.ci.meta.ResolvedJavaMethod org.graalvm.compiler.nodes.StructuredGraph org.graalvm.compiler.options.OptionValues org.graalvm.compiler.nodes.spi.CoreProviders org.graalvm.compiler.phases.common.CanonicalizerPhase org.graalvm.compiler.core.test.GraalCompilerTest$Result int int int
StackMap stack:
aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
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.virtual.VirtualObjectNode
astore 15
start local 15 15: aload 15
instanceof org.graalvm.compiler.nodes.virtual.VirtualArrayNode
ifeq 19
16: aload 15
checkcast org.graalvm.compiler.nodes.virtual.VirtualArrayNode
astore 16
start local 16 17: aload 16
aload 9
invokeinterface org.graalvm.compiler.nodes.spi.CoreProviders.getMetaAccessExtensionProvider:()Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;
invokevirtual org.graalvm.compiler.nodes.virtual.VirtualArrayNode.isVirtualByteArray:(Lorg/graalvm/compiler/core/common/spi/MetaAccessExtensionProvider;)Z
ifeq 19
18: aload 9
invokeinterface org.graalvm.compiler.nodes.spi.CoreProviders.getPlatformConfigurationProvider:()Lorg/graalvm/compiler/nodes/spi/PlatformConfigurationProvider;
invokeinterface org.graalvm.compiler.nodes.spi.PlatformConfigurationProvider.canVirtualizeLargeByteArrayAccess:()Z
istore 14
end local 16 19: StackMap locals: org.graalvm.compiler.nodes.virtual.VirtualObjectNode
StackMap stack:
iload 3
ifeq 20
iload 14
ifeq 20
iconst_1
goto 21
StackMap locals:
StackMap stack:
20: iconst_0
StackMap locals:
StackMap stack: int
21: istore 16
start local 16 22: iload 4
ifeq 23
iload 14
ifeq 23
iconst_1
goto 24
StackMap locals: int
StackMap stack:
23: iconst_0
StackMap locals:
StackMap stack: int
24: istore 17
start local 17 25: iload 16
ifeq 30
26: aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/extended/RawLoadNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
istore 18
start local 18 27: iload 12
iload 18
if_icmple 28
iconst_1
goto 29
StackMap locals: int int
StackMap stack:
28: iconst_0
StackMap locals:
StackMap stack: int
29: new java.lang.StringBuilder
dup
ldc "PEA did not escape reads. before: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 12
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", after "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 18
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.Object
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.assertTrue:(ZLjava/lang/String;[Ljava/lang/Object;)V
end local 18 30: StackMap locals:
StackMap stack:
iload 17
ifeq 35
31: aload 7
invokevirtual org.graalvm.compiler.nodes.StructuredGraph.getNodes:()Lorg/graalvm/compiler/graph/iterators/NodeIterable;
ldc Lorg/graalvm/compiler/nodes/extended/RawStoreNode;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.filter:(Ljava/lang/Class;)Lorg/graalvm/compiler/graph/iterators/NodeIterable;
invokeinterface org.graalvm.compiler.graph.iterators.NodeIterable.count:()I
istore 18
start local 18 32: iload 13
iload 18
if_icmple 33
iconst_1
goto 34
StackMap locals: int
StackMap stack:
33: iconst_0
StackMap locals:
StackMap stack: int
34: new java.lang.StringBuilder
dup
ldc "PEA did not escape writes, before: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 13
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", after: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 18
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.Object
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.assertTrue:(ZLjava/lang/String;[Ljava/lang/Object;)V
end local 18 35: StackMap locals:
StackMap stack:
aload 0
aload 6
aload 7
invokevirtual org.graalvm.compiler.core.test.UnsafeVirtualizationTest.getCode:(Ljdk/vm/ci/meta/ResolvedJavaMethod;Lorg/graalvm/compiler/nodes/StructuredGraph;)Ljdk/vm/ci/code/InstalledCode;
astore 18
start local 18 36: aload 18
aload 5
invokevirtual jdk.vm.ci.code.InstalledCode.executeVarargs:([Ljava/lang/Object;)Ljava/lang/Object;
astore 19
start local 19 37: aload 0
aload 11
new org.graalvm.compiler.core.test.GraalCompilerTest$Result
dup
aload 19
aconst_null
invokespecial org.graalvm.compiler.core.test.GraalCompilerTest$Result.<init>:(Ljava/lang/Object;Ljava/lang/Throwable;)V
invokevirtual org.graalvm.compiler.core.test.UnsafeVirtualizationTest.assertEquals:(Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;)V
end local 19 end local 18 38: goto 41
StackMap locals:
StackMap stack: java.lang.Throwable
39: astore 18
start local 18 40: iconst_1
aload 18
invokevirtual java.lang.Throwable.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.Object
invokestatic org.graalvm.compiler.core.test.UnsafeVirtualizationTest.assertFalse:(ZLjava/lang/String;[Ljava/lang/Object;)V
end local 18 41: StackMap locals:
StackMap stack:
return
end local 17 end local 16 end local 15 end local 14 end local 13 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 42 0 this Lorg/graalvm/compiler/core/test/UnsafeVirtualizationTest;
0 42 1 snippet Ljava/lang/String;
0 42 2 canonicalizeBefore Z
0 42 3 shouldEscapeRead Z
0 42 4 shouldEscapeWrite Z
0 42 5 args [Ljava/lang/Object;
2 42 6 method Ljdk/vm/ci/meta/ResolvedJavaMethod;
3 42 7 graph Lorg/graalvm/compiler/nodes/StructuredGraph;
4 42 8 options Lorg/graalvm/compiler/options/OptionValues;
5 42 9 context Lorg/graalvm/compiler/nodes/spi/CoreProviders;
6 42 10 canonicalizer Lorg/graalvm/compiler/phases/common/CanonicalizerPhase;
9 42 11 r Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
10 42 12 readCount I
11 42 13 writeCount I
13 42 14 canVirtualize Z
15 42 15 virtual Lorg/graalvm/compiler/nodes/virtual/VirtualObjectNode;
17 19 16 array Lorg/graalvm/compiler/nodes/virtual/VirtualArrayNode;
22 42 16 escapeReads Z
25 42 17 escapeWrites Z
27 30 18 newCount I
32 35 18 newCount I
36 38 18 code Ljdk/vm/ci/code/InstalledCode;
37 38 19 result Ljava/lang/Object;
40 41 18 e Ljava/lang/Throwable;
Exception table:
from to target type
35 38 39 Class java.lang.Throwable
MethodParameters:
Name Flags
snippet
canonicalizeBefore
shouldEscapeRead
shouldEscapeWrite
args
}
SourceFile: "UnsafeVirtualizationTest.java"
InnerClasses:
public Result = org.graalvm.compiler.core.test.GraalCompilerTest$Result of org.graalvm.compiler.core.test.GraalCompilerTest
public TestClassInt = org.graalvm.compiler.core.test.ea.EATestBase$TestClassInt of org.graalvm.compiler.core.test.ea.EATestBase
public final AllowAssumptions = org.graalvm.compiler.nodes.StructuredGraph$AllowAssumptions of org.graalvm.compiler.nodes.StructuredGraph