public class org.graalvm.compiler.hotspot.test.ObjectCloneTest 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.hotspot.test.ObjectCloneTest
  super_class: org.graalvm.compiler.core.test.GraalCompilerTest
{
  static final int[] ARRAY;
    descriptor: [I
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 96
            iconst_4
            newarray 10
            dup
            iconst_0
            iconst_1
            iastore
            dup
            iconst_1
            iconst_2
            iastore
            dup
            iconst_2
            iconst_4
            iastore
            dup
            iconst_3
            iconst_3
            iastore
            putstatic org.graalvm.compiler.hotspot.test.ObjectCloneTest.ARRAY:[I
            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 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
         0: .line 36
            aload 0 /* this */
            invokespecial org.graalvm.compiler.core.test.GraalCompilerTest.<init>:()V
            return
        end local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/hotspot/test/ObjectCloneTest;

  public static java.lang.Object cloneArray(int[]);
    descriptor: ([I)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // int[] array
         0: .line 39
            aload 0 /* array */
            invokevirtual int[].clone:()Ljava/lang/Object;
            areturn
        end local 0 // int[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0  array  [I
    MethodParameters:
       Name  Flags
      array  

  public static  cloneList(java.util.ArrayList<?>);
    descriptor: (Ljava/util/ArrayList;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.util.ArrayList list
         0: .line 43
            aload 0 /* list */
            invokevirtual java.util.ArrayList.clone:()Ljava/lang/Object;
            areturn
        end local 0 // java.util.ArrayList list
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  list  Ljava/util/ArrayList<*>;
    Signature: (Ljava/util/ArrayList<*>;)Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      list  

  public static java.lang.Object notCloneable(org.graalvm.compiler.hotspot.test.ObjectCloneTest$ObjectCloneable);
    descriptor: (Lorg/graalvm/compiler/hotspot/test/ObjectCloneTest$ObjectCloneable;)Ljava/lang/Object;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest$ObjectCloneable cloneable
         0: .line 68
            aload 0 /* cloneable */
            invokevirtual org.graalvm.compiler.hotspot.test.ObjectCloneTest$ObjectCloneable.clone:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.hotspot.test.ObjectCloneTest$ObjectCloneable
            astore 1 /* clone */
        start local 1 // org.graalvm.compiler.hotspot.test.ObjectCloneTest$ObjectCloneable clone
         1: .line 69
            aload 1 /* clone */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            areturn
        end local 1 // org.graalvm.compiler.hotspot.test.ObjectCloneTest$ObjectCloneable clone
        end local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest$ObjectCloneable cloneable
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  cloneable  Lorg/graalvm/compiler/hotspot/test/ObjectCloneTest$ObjectCloneable;
            1    2     1      clone  Lorg/graalvm/compiler/hotspot/test/ObjectCloneTest$ObjectCloneable;
    Exceptions:
      throws java.lang.CloneNotSupportedException
    MethodParameters:
           Name  Flags
      cloneable  

  public void testNotIntrinsified();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
         0: .line 74
            aload 0 /* this */
            ldc "notCloneable"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            new org.graalvm.compiler.hotspot.test.ObjectCloneTest$CloneableSubclass
            dup
            invokespecial org.graalvm.compiler.hotspot.test.ObjectCloneTest$CloneableSubclass.<init>:()V
            aastore
            invokevirtual org.graalvm.compiler.hotspot.test.ObjectCloneTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
            pop
         1: .line 75
            return
        end local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/hotspot/test/ObjectCloneTest;
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testArray();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
         0: .line 79
            aload 0 /* this */
            ldc "cloneArray"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_4
            newarray 10
            dup
            iconst_0
            iconst_1
            iastore
            dup
            iconst_1
            iconst_2
            iastore
            dup
            iconst_2
            iconst_4
            iastore
            dup
            iconst_3
            iconst_3
            iastore
            aastore
            invokevirtual org.graalvm.compiler.hotspot.test.ObjectCloneTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
            pop
         1: .line 80
            return
        end local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/hotspot/test/ObjectCloneTest;
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testList();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
         0: .line 84
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 1 /* list */
        start local 1 // java.util.ArrayList list
         1: .line 85
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 86
      StackMap locals: java.util.ArrayList int
      StackMap stack:
            aload 1 /* list */
            iload 2 /* i */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         4: .line 85
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            iconst_4
            if_icmplt 3
        end local 2 // int i
         6: .line 88
            aload 0 /* this */
            ldc "cloneList"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* list */
            aastore
            invokevirtual org.graalvm.compiler.hotspot.test.ObjectCloneTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
            pop
         7: .line 89
            return
        end local 1 // java.util.ArrayList list
        end local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lorg/graalvm/compiler/hotspot/test/ObjectCloneTest;
            1    8     1  list  Ljava/util/ArrayList<Ljava/lang/Object;>;
            2    6     2     i  I
    Exceptions:
      throws java.lang.Throwable
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  protected org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration editGraphBuilderConfiguration(org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration);
    descriptor: (Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;)Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
        start local 1 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration conf
         0: .line 93
            aload 0 /* this */
            aload 1 /* conf */
            iconst_1
            invokevirtual org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration.withNodeSourcePosition:(Z)Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;
            invokespecial org.graalvm.compiler.core.test.GraalCompilerTest.editGraphBuilderConfiguration:(Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;)Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;
            areturn
        end local 1 // org.graalvm.compiler.nodes.graphbuilderconf.GraphBuilderConfiguration conf
        end local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/hotspot/test/ObjectCloneTest;
            0    1     1  conf  Lorg/graalvm/compiler/nodes/graphbuilderconf/GraphBuilderConfiguration;
    MethodParameters:
      Name  Flags
      conf  

  public static int[] cloneConstantArray();
    descriptor: ()[I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 99
            getstatic org.graalvm.compiler.hotspot.test.ObjectCloneTest.ARRAY:[I
            invokevirtual int[].clone:()Ljava/lang/Object;
            checkcast int[]
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void testCloneConstantArray();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
         0: .line 104
            aload 0 /* this */
            ldc "cloneConstantArray"
            iconst_0
            anewarray java.lang.Object
            invokevirtual org.graalvm.compiler.hotspot.test.ObjectCloneTest.test:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/graalvm/compiler/core/test/GraalCompilerTest$Result;
            pop
         1: .line 105
            return
        end local 0 // org.graalvm.compiler.hotspot.test.ObjectCloneTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/hotspot/test/ObjectCloneTest;
    RuntimeVisibleAnnotations: 
      org.junit.Test()
}
SourceFile: "ObjectCloneTest.java"
NestMembers:
  org.graalvm.compiler.hotspot.test.ObjectCloneTest$CloneableSubclass  org.graalvm.compiler.hotspot.test.ObjectCloneTest$ObjectCloneable
InnerClasses:
  public Result = org.graalvm.compiler.core.test.GraalCompilerTest$Result of org.graalvm.compiler.core.test.GraalCompilerTest
  CloneableSubclass = org.graalvm.compiler.hotspot.test.ObjectCloneTest$CloneableSubclass of org.graalvm.compiler.hotspot.test.ObjectCloneTest
  ObjectCloneable = org.graalvm.compiler.hotspot.test.ObjectCloneTest$ObjectCloneable of org.graalvm.compiler.hotspot.test.ObjectCloneTest