public class org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest extends org.graalvm.compiler.hotspot.test.HotSpotGraalCompilerTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest
super_class: org.graalvm.compiler.hotspot.test.HotSpotGraalCompilerTest
{
private static java.util.EnumSet<org.graalvm.compiler.hotspot.HotSpotGraalRuntime$HotSpotGC> knownSupport;
descriptor: Ljava/util/EnumSet;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/EnumSet<Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntime$HotSpotGC;>;
private final org.graalvm.compiler.hotspot.GraalHotSpotVMConfig config;
descriptor: Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int expectedBarriers;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private static final java.lang.ref.WeakReference<?> weakReference;
descriptor: Ljava/lang/ref/WeakReference;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ref/WeakReference<*>;
private static final java.lang.Object weakReferenceAsObject;
descriptor: Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final long referenceReferentFieldOffset;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final long referenceQueueFieldOffset;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$DummyReference dummyReference;
descriptor: Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$DummyReference;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final long dummyReferenceReferentFieldOffset;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static java.lang.Object[] src;
descriptor: [Ljava/lang/Object;
flags: (0x0008) ACC_STATIC
static java.lang.Object[] dst;
descriptor: [Ljava/lang/Object;
flags: (0x0008) ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=1, args_size=0
0: getstatic org.graalvm.compiler.hotspot.HotSpotGraalRuntime$HotSpotGC.G1:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntime$HotSpotGC;
getstatic org.graalvm.compiler.hotspot.HotSpotGraalRuntime$HotSpotGC.CMS:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntime$HotSpotGC;
getstatic org.graalvm.compiler.hotspot.HotSpotGraalRuntime$HotSpotGC.Parallel:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntime$HotSpotGC;
getstatic org.graalvm.compiler.hotspot.HotSpotGraalRuntime$HotSpotGC.Serial:Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntime$HotSpotGC;
invokestatic java.util.EnumSet.of:(Ljava/lang/Enum;Ljava/lang/Enum;Ljava/lang/Enum;Ljava/lang/Enum;)Ljava/util/EnumSet;
putstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.knownSupport:Ljava/util/EnumSet;
1: new java.lang.ref.WeakReference
dup
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
putstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.weakReference:Ljava/lang/ref/WeakReference;
2: new java.lang.ref.WeakReference
dup
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
putstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.weakReferenceAsObject:Ljava/lang/Object;
3: invokestatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.getStaticMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
ldc Ljava/lang/ref/Reference;
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
ldc "referent"
invokestatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.getFieldOffset:(Ljdk/vm/ci/meta/ResolvedJavaType;Ljava/lang/String;)I
i2l
putstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.referenceReferentFieldOffset:J
4: invokestatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.getStaticMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
ldc Ljava/lang/ref/Reference;
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
ldc "queue"
invokestatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.getFieldOffset:(Ljdk/vm/ci/meta/ResolvedJavaType;Ljava/lang/String;)I
i2l
putstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.referenceQueueFieldOffset:J
5: new org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$DummyReference
dup
invokespecial org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$DummyReference.<init>:()V
putstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.dummyReference:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$DummyReference;
6: invokestatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.getStaticMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
ldc Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$DummyReference;
invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
ldc "referent"
invokestatic org.graalvm.compiler.hotspot.replacements.HotSpotReplacementsUtil.getFieldOffset:(Ljdk/vm/ci/meta/ResolvedJavaType;Ljava/lang/String;)I
i2l
putstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.dummyReferenceReferentFieldOffset:J
7: iconst_1
anewarray java.lang.Object
putstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.src:[Ljava/lang/Object;
8: iconst_1
anewarray java.lang.Object
putstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.dst:[Ljava/lang/Object;
9: iconst_0
istore 0
start local 0 10: goto 13
11: StackMap locals: int
StackMap stack:
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.src:[Ljava/lang/Object;
iload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
aastore
12: iinc 0 1
StackMap locals:
StackMap stack:
13: iload 0
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.src:[Ljava/lang/Object;
arraylength
if_icmplt 11
end local 0 14: iconst_0
istore 0
start local 0 15: goto 18
16: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.dst:[Ljava/lang/Object;
iload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
aastore
17: iinc 0 1
StackMap locals:
StackMap stack:
18: iload 0
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.dst:[Ljava/lang/Object;
arraylength
if_icmplt 16
end local 0 19: return
LocalVariableTable:
Start End Slot Name Signature
10 14 0 i I
15 19 0 i I
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.hotspot.test.HotSpotGraalCompilerTest.<init>:()V
1: aload 0
aload 0
invokevirtual org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.runtime:()Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getVMConfig:()Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
putfield org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.config:Lorg/graalvm/compiler/hotspot/GraalHotSpotVMConfig;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest;
public void testAllocation();
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/WriteBarrierAdditionTest;
Exceptions:
throws java.lang.Exception
RuntimeInvisibleAnnotations:
Test()
public static org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container testAllocationSnippet();
descriptor: ()Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=0
0: new org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container
dup
invokespecial org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.<init>:()V
astore 0
start local 0 1: new org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container
dup
invokespecial org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.<init>:()V
astore 1
start local 1 2: new org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container
dup
invokespecial org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.<init>:()V
astore 2
start local 2 3: aload 0
aload 1
putfield org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.a:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
4: aload 0
aload 2
putfield org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.b:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
5: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 6 0 main Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
2 6 1 temp1 Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
3 6 2 temp2 Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
public void testLoopAllocation1();
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/WriteBarrierAdditionTest;
Exceptions:
throws java.lang.Exception
RuntimeInvisibleAnnotations:
Test()
public static void test2Snippet(boolean);
descriptor: (Z)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: new org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container
dup
invokespecial org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.<init>:()V
astore 1
start local 1 1: new org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container
dup
invokespecial org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.<init>:()V
astore 2
start local 2 2: new org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container
dup
invokespecial org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.<init>:()V
astore 3
start local 3 3: iconst_0
istore 4
start local 4 4: goto 12
5: StackMap locals: int org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container int
StackMap stack:
iload 0
ifeq 9
6: aload 1
aload 2
putfield org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.a:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
7: aload 1
aload 3
putfield org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.b:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
8: goto 11
9: StackMap locals:
StackMap stack:
aload 1
aload 3
putfield org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.a:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
10: aload 1
aload 2
putfield org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.b:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
11: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
12: iload 4
bipush 10
if_icmplt 5
end local 4 13: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 test Z
1 14 1 main Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
2 14 2 temp1 Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
3 14 3 temp2 Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
4 13 4 i I
MethodParameters:
Name Flags
test
public void testLoopAllocation2();
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/WriteBarrierAdditionTest;
Exceptions:
throws java.lang.Exception
RuntimeInvisibleAnnotations:
Test()
public static void test3Snippet();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=0
0: bipush 10
anewarray org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container
astore 0
start local 0 1: new org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container
dup
invokespecial org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.<init>:()V
astore 1
start local 1 2: new org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container
dup
invokespecial org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.<init>:()V
astore 2
start local 2 3: iconst_0
istore 3
start local 3 4: goto 7
5: StackMap locals: org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container[] org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container int
StackMap stack:
aload 0
iload 3
aaload
aload 0
iload 3
aaload
aload 1
dup_x1
putfield org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.b:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
putfield org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.a:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
6: iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
bipush 10
if_icmplt 5
end local 3 8: iconst_0
istore 3
start local 3 9: goto 12
10: StackMap locals:
StackMap stack:
aload 0
iload 3
aaload
aload 0
iload 3
aaload
aload 2
dup_x1
putfield org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.b:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
putfield org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container.a:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
11: iinc 3 1
StackMap locals:
StackMap stack:
12: iload 3
bipush 10
if_icmplt 10
end local 3 13: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 14 0 main [Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
2 14 1 temp1 Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
3 14 2 temp2 Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$Container;
4 8 3 i I
9 13 3 i I
public void testReferenceGet();
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/WriteBarrierAdditionTest;
Exceptions:
throws java.lang.Exception
RuntimeInvisibleAnnotations:
Test()
public static java.lang.Object testReferenceGetSnippet();
descriptor: ()Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.weakReference:Ljava/lang/ref/WeakReference;
invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static jdk.vm.ci.meta.MetaAccessProvider getStaticMetaAccess();
descriptor: ()Ljdk/vm/ci/meta/MetaAccessProvider;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/runtime/RuntimeProvider;
invokestatic org.graalvm.compiler.api.test.Graal.getRequiredCapability:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast org.graalvm.compiler.runtime.RuntimeProvider
invokeinterface org.graalvm.compiler.runtime.RuntimeProvider.getHostBackend:()Lorg/graalvm/compiler/core/target/Backend;
checkcast org.graalvm.compiler.hotspot.HotSpotBackend
invokevirtual org.graalvm.compiler.hotspot.HotSpotBackend.getRuntime:()Lorg/graalvm/compiler/hotspot/HotSpotGraalRuntimeProvider;
invokeinterface org.graalvm.compiler.hotspot.HotSpotGraalRuntimeProvider.getHostProviders:()Lorg/graalvm/compiler/hotspot/meta/HotSpotProviders;
invokevirtual org.graalvm.compiler.hotspot.meta.HotSpotProviders.getMetaAccess:()Ljdk/vm/ci/meta/MetaAccessProvider;
areturn
LocalVariableTable:
Start End Slot Name Signature
public void testReferenceReferent1();
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/WriteBarrierAdditionTest;
Exceptions:
throws java.lang.Exception
RuntimeInvisibleAnnotations:
Test()
public java.lang.Object testReferenceReferentSnippet();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.UNSAFE:Lsun/misc/Unsafe;
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.weakReference:Ljava/lang/ref/WeakReference;
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.referenceReferentFieldOffset:J
invokevirtual sun.misc.Unsafe.getObject:(Ljava/lang/Object;J)Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest;
public void testReferenceReferent2();
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/WriteBarrierAdditionTest;
Exceptions:
throws java.lang.Exception
RuntimeInvisibleAnnotations:
Test()
public java.lang.Object testReferenceReferent2Snippet(long);
descriptor: (J)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.UNSAFE:Lsun/misc/Unsafe;
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.weakReference:Ljava/lang/ref/WeakReference;
lload 1
invokevirtual sun.misc.Unsafe.getObject:(Ljava/lang/Object;J)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest;
0 1 1 offset J
MethodParameters:
Name Flags
offset
public void testReferenceReferent3();
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/WriteBarrierAdditionTest;
Exceptions:
throws java.lang.Exception
RuntimeInvisibleAnnotations:
Test()
public java.lang.Object testReferenceReferent3Snippet();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.UNSAFE:Lsun/misc/Unsafe;
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.weakReference:Ljava/lang/ref/WeakReference;
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.referenceQueueFieldOffset:J
invokevirtual sun.misc.Unsafe.getObject:(Ljava/lang/Object;J)Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest;
public void testReferenceReferent4();
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/WriteBarrierAdditionTest;
Exceptions:
throws java.lang.Exception
RuntimeInvisibleAnnotations:
Test()
public java.lang.Object testReferenceReferent4Snippet();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.UNSAFE:Lsun/misc/Unsafe;
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.weakReferenceAsObject:Ljava/lang/Object;
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.referenceReferentFieldOffset:J
invokevirtual sun.misc.Unsafe.getObject:(Ljava/lang/Object;J)Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest;
public void testReferenceReferent5();
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\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/hotspot/test/WriteBarrierAdditionTest;
Exceptions:
throws java.lang.Exception
RuntimeInvisibleAnnotations:
Test()
public java.lang.Object testReferenceReferent5Snippet();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.UNSAFE:Lsun/misc/Unsafe;
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.dummyReference:Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest$DummyReference;
getstatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.referenceReferentFieldOffset:J
invokevirtual sun.misc.Unsafe.getObject:(Ljava/lang/Object;J)Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest;
public static void testArrayCopySnippet(java.lang.Object, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iconst_0
aload 1
iconst_0
aload 2
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 a Ljava/lang/Object;
0 2 1 b Ljava/lang/Object;
0 2 2 c Ljava/lang/Object;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
a
b
c
public void testArrayCopy();
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/WriteBarrierAdditionTest;
Exceptions:
throws java.lang.Exception
RuntimeInvisibleAnnotations:
Test()
private void verifyBarriers(org.graalvm.compiler.nodes.StructuredGraph);
descriptor: (Lorg/graalvm/compiler/nodes/StructuredGraph;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
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\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/hotspot/test/WriteBarrierAdditionTest;
MethodParameters:
Name Flags
graph
protected org.graalvm.compiler.core.test.GraalCompilerTest$Result testWithoutPEA(java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
flags: (0x0084) ACC_PROTECTED, ACC_VARARGS
Code:
stack=10, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
new org.graalvm.compiler.options.OptionValues
dup
invokestatic org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.getInitialOptions:()Lorg/graalvm/compiler/options/OptionValues;
getstatic org.graalvm.compiler.core.common.GraalOptions.PartialEscapeAnalysis:Lorg/graalvm/compiler/options/OptionKey;
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
iconst_4
anewarray java.lang.Object
dup
iconst_0
getstatic org.graalvm.compiler.core.common.GraalOptions.FullUnroll:Lorg/graalvm/compiler/options/OptionKey;
aastore
dup
iconst_1
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
dup
iconst_2
getstatic org.graalvm.compiler.core.common.GraalOptions.LoopPeeling:Lorg/graalvm/compiler/options/OptionKey;
aastore
dup
iconst_3
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
invokespecial org.graalvm.compiler.options.OptionValues.<init>:(Lorg/graalvm/compiler/options/OptionValues;Lorg/graalvm/compiler/options/OptionKey;Ljava/lang/Object;[Ljava/lang/Object;)V
aload 1
aload 2
invokevirtual org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.test:(Lorg/graalvm/compiler/options/OptionValues;Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest;
0 1 1 name Ljava/lang/String;
0 1 2 args [Ljava/lang/Object;
MethodParameters:
Name Flags
name
args
public void before();
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\tBefore 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/WriteBarrierAdditionTest;
RuntimeInvisibleAnnotations:
Before()
protected org.graalvm.compiler.phases.tiers.Suites createSuites(org.graalvm.compiler.options.OptionValues);
descriptor: (Lorg/graalvm/compiler/options/OptionValues;)Lorg/graalvm/compiler/phases/tiers/Suites;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest.getBackend:()Lorg/graalvm/compiler/core/target/Backend;
invokevirtual org.graalvm.compiler.core.target.Backend.getSuites:()Lorg/graalvm/compiler/phases/tiers/SuitesProvider;
aload 1
invokeinterface org.graalvm.compiler.phases.tiers.SuitesProvider.getDefaultSuites:(Lorg/graalvm/compiler/options/OptionValues;)Lorg/graalvm/compiler/phases/tiers/Suites;
invokevirtual org.graalvm.compiler.phases.tiers.Suites.copy:()Lorg/graalvm/compiler/phases/tiers/Suites;
astore 2
start local 2 1: aload 2
invokevirtual org.graalvm.compiler.phases.tiers.Suites.getMidTier:()Lorg/graalvm/compiler/phases/PhaseSuite;
ldc Lorg/graalvm/compiler/phases/common/WriteBarrierAdditionPhase;
iconst_1
invokevirtual org.graalvm.compiler.phases.PhaseSuite.findPhase:(Ljava/lang/Class;Z)Ljava/util/ListIterator;
astore 3
start local 3 2: aload 3
new org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$1
dup
aload 0
invokespecial org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$1.<init>:(Lorg/graalvm/compiler/hotspot/test/WriteBarrierAdditionTest;)V
invokeinterface java.util.ListIterator.add:(Ljava/lang/Object;)V
3: aload 2
areturn
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/hotspot/test/WriteBarrierAdditionTest;
0 4 1 opts Lorg/graalvm/compiler/options/OptionValues;
1 4 2 ret Lorg/graalvm/compiler/phases/tiers/Suites;
2 4 3 iter Ljava/util/ListIterator<Lorg/graalvm/compiler/phases/BasePhase<-Lorg/graalvm/compiler/phases/tiers/MidTierContext;>;>;
MethodParameters:
Name Flags
opts
}
SourceFile: "WriteBarrierAdditionTest.java"
NestMembers:
org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$1 org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$DummyReference
InnerClasses:
public Result = org.graalvm.compiler.core.test.GraalCompilerTest$Result of org.graalvm.compiler.core.test.GraalCompilerTest
public final HotSpotGC = org.graalvm.compiler.hotspot.HotSpotGraalRuntime$HotSpotGC of org.graalvm.compiler.hotspot.HotSpotGraalRuntime
org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$1
public Container = org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$Container of org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest
DummyReference = org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest$DummyReference of org.graalvm.compiler.hotspot.test.WriteBarrierAdditionTest