public final class org.graalvm.compiler.code.DataSection implements java.lang.Iterable<org.graalvm.compiler.code.DataSection$Data>
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: org.graalvm.compiler.code.DataSection
  super_class: java.lang.Object
{
  private final java.util.ArrayList<org.graalvm.compiler.code.DataSection$Data> dataItems;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/ArrayList<Lorg/graalvm/compiler/code/DataSection$Data;>;

  private boolean closed;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private int sectionAlignment;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int sectionSize;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 41
            ldc Lorg/graalvm/compiler/code/DataSection;
            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.code.DataSection.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.code.DataSection this
         0: .line 41
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 230
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
         2: .line 41
            return
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/code/DataSection;

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.code.DataSection this
         0: .line 239
            new java.lang.UnsupportedOperationException
            dup
            ldc "hashCode"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/code/DataSection;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.code.DataSection this
         0: .line 244
            aload 0 /* this */
            invokestatic jdk.vm.ci.meta.MetaUtil.identityHashCodeString:(Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/code/DataSection;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.code.DataSection this
        start local 1 // java.lang.Object obj
         0: .line 249
            aload 0 /* this */
            aload 1 /* obj */
            if_acmpne 2
         1: .line 250
            iconst_1
            ireturn
         2: .line 252
      StackMap locals:
      StackMap stack:
            aload 1 /* obj */
            instanceof org.graalvm.compiler.code.DataSection
            ifeq 6
         3: .line 253
            aload 1 /* obj */
            checkcast org.graalvm.compiler.code.DataSection
            astore 2 /* that */
        start local 2 // org.graalvm.compiler.code.DataSection that
         4: .line 254
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.closed:Z
            aload 2 /* that */
            getfield org.graalvm.compiler.code.DataSection.closed:Z
            if_icmpne 6
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.sectionAlignment:I
            aload 2 /* that */
            getfield org.graalvm.compiler.code.DataSection.sectionAlignment:I
            if_icmpne 6
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.sectionSize:I
            aload 2 /* that */
            getfield org.graalvm.compiler.code.DataSection.sectionSize:I
            if_icmpne 6
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            aload 2 /* that */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            invokestatic java.util.Objects.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 6
         5: .line 255
            iconst_1
            ireturn
        end local 2 // org.graalvm.compiler.code.DataSection that
         6: .line 258
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Object obj
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/graalvm/compiler/code/DataSection;
            0    7     1   obj  Ljava/lang/Object;
            4    6     2  that  Lorg/graalvm/compiler/code/DataSection;
    MethodParameters:
      Name  Flags
      obj   

  public jdk.vm.ci.code.site.DataSectionReference insertData(org.graalvm.compiler.code.DataSection$Data);
    descriptor: (Lorg/graalvm/compiler/code/DataSection$Data;)Ljdk/vm/ci/code/site/DataSectionReference;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.code.DataSection this
        start local 1 // org.graalvm.compiler.code.DataSection$Data data
         0: .line 269
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.code.DataSection.checkOpen:()V
         1: .line 270
            aload 1 /* data */
            dup
            astore 2
            monitorenter
         2: .line 271
            aload 1 /* data */
            getfield org.graalvm.compiler.code.DataSection$Data.ref:Ljdk/vm/ci/code/site/DataSectionReference;
            ifnonnull 5
         3: .line 272
            aload 1 /* data */
            new jdk.vm.ci.code.site.DataSectionReference
            dup
            invokespecial jdk.vm.ci.code.site.DataSectionReference.<init>:()V
            putfield org.graalvm.compiler.code.DataSection$Data.ref:Ljdk/vm/ci/code/site/DataSectionReference;
         4: .line 273
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            aload 1 /* data */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         5: .line 275
      StackMap locals: org.graalvm.compiler.code.DataSection$Data
      StackMap stack:
            aload 1 /* data */
            getfield org.graalvm.compiler.code.DataSection$Data.ref:Ljdk/vm/ci/code/site/DataSectionReference;
            aload 2
            monitorexit
         6: areturn
         7: .line 270
      StackMap locals:
      StackMap stack: java.lang.Throwable
            aload 2
            monitorexit
         8: athrow
        end local 1 // org.graalvm.compiler.code.DataSection$Data data
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Lorg/graalvm/compiler/code/DataSection;
            0    9     1  data  Lorg/graalvm/compiler/code/DataSection$Data;
      Exception table:
        from    to  target  type
           2     6       7  any
           7     8       7  any
    MethodParameters:
      Name  Flags
      data  

  public void addAll(org.graalvm.compiler.code.DataSection);
    descriptor: (Lorg/graalvm/compiler/code/DataSection;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.graalvm.compiler.code.DataSection this
        start local 1 // org.graalvm.compiler.code.DataSection other
         0: .line 284
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.code.DataSection.checkOpen:()V
         1: .line 285
            aload 1 /* other */
            invokevirtual org.graalvm.compiler.code.DataSection.checkOpen:()V
         2: .line 287
            aload 1 /* other */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 3
            goto 6
      StackMap locals: org.graalvm.compiler.code.DataSection org.graalvm.compiler.code.DataSection top java.util.Iterator
      StackMap stack:
         3: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.code.DataSection$Data
            astore 2 /* data */
        start local 2 // org.graalvm.compiler.code.DataSection$Data data
         4: .line 288
            getstatic org.graalvm.compiler.code.DataSection.$assertionsDisabled:Z
            ifne 5
            aload 2 /* data */
            getfield org.graalvm.compiler.code.DataSection$Data.ref:Ljdk/vm/ci/code/site/DataSectionReference;
            ifnonnull 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 289
      StackMap locals: org.graalvm.compiler.code.DataSection org.graalvm.compiler.code.DataSection org.graalvm.compiler.code.DataSection$Data java.util.Iterator
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            aload 2 /* data */
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // org.graalvm.compiler.code.DataSection$Data data
         6: .line 287
      StackMap locals: org.graalvm.compiler.code.DataSection org.graalvm.compiler.code.DataSection top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         7: .line 291
            aload 1 /* other */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.clear:()V
         8: .line 292
            return
        end local 1 // org.graalvm.compiler.code.DataSection other
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Lorg/graalvm/compiler/code/DataSection;
            0    9     1  other  Lorg/graalvm/compiler/code/DataSection;
            4    6     2   data  Lorg/graalvm/compiler/code/DataSection$Data;
    MethodParameters:
       Name  Flags
      other  

  public boolean closed();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.code.DataSection this
         0: .line 298
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.closed:Z
            ireturn
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/code/DataSection;

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // org.graalvm.compiler.code.DataSection this
         0: .line 307
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.code.DataSection.checkOpen:()V
         1: .line 308
            aload 0 /* this */
            iconst_1
            putfield org.graalvm.compiler.code.DataSection.closed:Z
         2: .line 311
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            invokedynamic compare()Ljava/util/Comparator;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)I
                  org/graalvm/compiler/code/DataSection.lambda$0(Lorg/graalvm/compiler/code/DataSection$Data;Lorg/graalvm/compiler/code/DataSection$Data;)I (6)
                  (Lorg/graalvm/compiler/code/DataSection$Data;Lorg/graalvm/compiler/code/DataSection$Data;)I
            invokevirtual java.util.ArrayList.sort:(Ljava/util/Comparator;)V
         3: .line 313
            iconst_0
            istore 1 /* position */
        start local 1 // int position
         4: .line 314
            iconst_1
            istore 2 /* alignment */
        start local 2 // int alignment
         5: .line 315
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 4
            goto 11
      StackMap locals: org.graalvm.compiler.code.DataSection int int top java.util.Iterator
      StackMap stack:
         6: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.code.DataSection$Data
            astore 3 /* d */
        start local 3 // org.graalvm.compiler.code.DataSection$Data d
         7: .line 316
            iload 2 /* alignment */
            aload 3 /* d */
            getfield org.graalvm.compiler.code.DataSection$Data.alignment:I
            invokestatic org.graalvm.compiler.code.DataSection.lcm:(II)I
            istore 2 /* alignment */
         8: .line 317
            iload 1 /* position */
            aload 3 /* d */
            getfield org.graalvm.compiler.code.DataSection$Data.alignment:I
            invokestatic org.graalvm.compiler.code.DataSection.align:(II)I
            istore 1 /* position */
         9: .line 319
            aload 3 /* d */
            getfield org.graalvm.compiler.code.DataSection$Data.ref:Ljdk/vm/ci/code/site/DataSectionReference;
            iload 1 /* position */
            invokevirtual jdk.vm.ci.code.site.DataSectionReference.setOffset:(I)V
        10: .line 320
            iload 1 /* position */
            aload 3 /* d */
            getfield org.graalvm.compiler.code.DataSection$Data.size:I
            iadd
            istore 1 /* position */
        end local 3 // org.graalvm.compiler.code.DataSection$Data d
        11: .line 315
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        12: .line 323
            aload 0 /* this */
            iload 2 /* alignment */
            putfield org.graalvm.compiler.code.DataSection.sectionAlignment:I
        13: .line 324
            aload 0 /* this */
            iload 1 /* position */
            putfield org.graalvm.compiler.code.DataSection.sectionSize:I
        14: .line 325
            return
        end local 2 // int alignment
        end local 1 // int position
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Lorg/graalvm/compiler/code/DataSection;
            4   15     1   position  I
            5   15     2  alignment  I
            7   11     3          d  Lorg/graalvm/compiler/code/DataSection$Data;

  public int getSectionSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.code.DataSection this
         0: .line 333
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.code.DataSection.checkClosed:()V
         1: .line 334
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.sectionSize:I
            ireturn
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/code/DataSection;

  public int getSectionAlignment();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.code.DataSection this
         0: .line 343
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.code.DataSection.checkClosed:()V
         1: .line 344
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.sectionAlignment:I
            ireturn
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/code/DataSection;

  public void buildDataSection(java.nio.ByteBuffer, org.graalvm.compiler.code.DataSection$Patches);
    descriptor: (Ljava/nio/ByteBuffer;Lorg/graalvm/compiler/code/DataSection$Patches;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.graalvm.compiler.code.DataSection this
        start local 1 // java.nio.ByteBuffer buffer
        start local 2 // org.graalvm.compiler.code.DataSection$Patches patch
         0: .line 358
            aload 0 /* this */
            aload 1 /* buffer */
            aload 2 /* patch */
            invokedynamic accept()Ljava/util/function/BiConsumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;Ljava/lang/Object;)V
                  org/graalvm/compiler/code/DataSection.lambda$1(Ljdk/vm/ci/code/site/DataSectionReference;Ljava/lang/Integer;)V (6)
                  (Ljdk/vm/ci/code/site/DataSectionReference;Ljava/lang/Integer;)V
            invokevirtual org.graalvm.compiler.code.DataSection.buildDataSection:(Ljava/nio/ByteBuffer;Lorg/graalvm/compiler/code/DataSection$Patches;Ljava/util/function/BiConsumer;)V
         1: .line 360
            return
        end local 2 // org.graalvm.compiler.code.DataSection$Patches patch
        end local 1 // java.nio.ByteBuffer buffer
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/graalvm/compiler/code/DataSection;
            0    2     1  buffer  Ljava/nio/ByteBuffer;
            0    2     2   patch  Lorg/graalvm/compiler/code/DataSection$Patches;
    MethodParameters:
        Name  Flags
      buffer  
      patch   

  public void buildDataSection(java.nio.ByteBuffer, org.graalvm.compiler.code.DataSection$Patches, java.util.function.BiConsumer<jdk.vm.ci.code.site.DataSectionReference, java.lang.Integer>);
    descriptor: (Ljava/nio/ByteBuffer;Lorg/graalvm/compiler/code/DataSection$Patches;Ljava/util/function/BiConsumer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=7, args_size=4
        start local 0 // org.graalvm.compiler.code.DataSection this
        start local 1 // java.nio.ByteBuffer buffer
        start local 2 // org.graalvm.compiler.code.DataSection$Patches patch
        start local 3 // java.util.function.BiConsumer onEmit
         0: .line 375
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.code.DataSection.checkClosed:()V
         1: .line 376
            getstatic org.graalvm.compiler.code.DataSection.$assertionsDisabled:Z
            ifne 2
            aload 1 /* buffer */
            invokevirtual java.nio.ByteBuffer.remaining:()I
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.sectionSize:I
            if_icmpge 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 377
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            invokevirtual java.nio.ByteBuffer.position:()I
            istore 4 /* start */
        start local 4 // int start
         3: .line 378
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 6
            goto 8
      StackMap locals: org.graalvm.compiler.code.DataSection java.nio.ByteBuffer org.graalvm.compiler.code.DataSection$Patches java.util.function.BiConsumer int top java.util.Iterator
      StackMap stack:
         4: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.code.DataSection$Data
            astore 5 /* d */
        start local 5 // org.graalvm.compiler.code.DataSection$Data d
         5: .line 379
            aload 1 /* buffer */
            iload 4 /* start */
            aload 5 /* d */
            getfield org.graalvm.compiler.code.DataSection$Data.ref:Ljdk/vm/ci/code/site/DataSectionReference;
            invokevirtual jdk.vm.ci.code.site.DataSectionReference.getOffset:()I
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
         6: .line 380
            aload 3 /* onEmit */
            aload 5 /* d */
            getfield org.graalvm.compiler.code.DataSection$Data.ref:Ljdk/vm/ci/code/site/DataSectionReference;
            aload 5 /* d */
            invokevirtual org.graalvm.compiler.code.DataSection$Data.getSize:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
         7: .line 381
            aload 5 /* d */
            aload 1 /* buffer */
            aload 2 /* patch */
            invokevirtual org.graalvm.compiler.code.DataSection$Data.emit:(Ljava/nio/ByteBuffer;Lorg/graalvm/compiler/code/DataSection$Patches;)V
        end local 5 // org.graalvm.compiler.code.DataSection$Data d
         8: .line 378
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         9: .line 383
            aload 1 /* buffer */
            iload 4 /* start */
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.sectionSize:I
            iadd
            invokevirtual java.nio.ByteBuffer.position:(I)Ljava/nio/ByteBuffer;
            pop
        10: .line 384
            return
        end local 4 // int start
        end local 3 // java.util.function.BiConsumer onEmit
        end local 2 // org.graalvm.compiler.code.DataSection$Patches patch
        end local 1 // java.nio.ByteBuffer buffer
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   11     0    this  Lorg/graalvm/compiler/code/DataSection;
            0   11     1  buffer  Ljava/nio/ByteBuffer;
            0   11     2   patch  Lorg/graalvm/compiler/code/DataSection$Patches;
            0   11     3  onEmit  Ljava/util/function/BiConsumer<Ljdk/vm/ci/code/site/DataSectionReference;Ljava/lang/Integer;>;
            3   11     4   start  I
            5    8     5       d  Lorg/graalvm/compiler/code/DataSection$Data;
    Signature: (Ljava/nio/ByteBuffer;Lorg/graalvm/compiler/code/DataSection$Patches;Ljava/util/function/BiConsumer<Ljdk/vm/ci/code/site/DataSectionReference;Ljava/lang/Integer;>;)V
    MethodParameters:
        Name  Flags
      buffer  
      patch   
      onEmit  

  public org.graalvm.compiler.code.DataSection$Data findData(jdk.vm.ci.code.site.DataSectionReference);
    descriptor: (Ljdk/vm/ci/code/site/DataSectionReference;)Lorg/graalvm/compiler/code/DataSection$Data;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.graalvm.compiler.code.DataSection this
        start local 1 // jdk.vm.ci.code.site.DataSectionReference ref
         0: .line 387
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: org.graalvm.compiler.code.DataSection jdk.vm.ci.code.site.DataSectionReference top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.code.DataSection$Data
            astore 2 /* d */
        start local 2 // org.graalvm.compiler.code.DataSection$Data d
         2: .line 388
            aload 2 /* d */
            getfield org.graalvm.compiler.code.DataSection$Data.ref:Ljdk/vm/ci/code/site/DataSectionReference;
            aload 1 /* ref */
            if_acmpne 4
         3: .line 389
            aload 2 /* d */
            areturn
        end local 2 // org.graalvm.compiler.code.DataSection$Data d
         4: .line 387
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 392
            aconst_null
            areturn
        end local 1 // jdk.vm.ci.code.site.DataSectionReference ref
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/graalvm/compiler/code/DataSection;
            0    6     1   ref  Ljdk/vm/ci/code/site/DataSectionReference;
            2    4     2     d  Lorg/graalvm/compiler/code/DataSection$Data;
    MethodParameters:
      Name  Flags
      ref   

  public static void emit(java.nio.ByteBuffer, org.graalvm.compiler.code.DataSection$Data, org.graalvm.compiler.code.DataSection$Patches);
    descriptor: (Ljava/nio/ByteBuffer;Lorg/graalvm/compiler/code/DataSection$Data;Lorg/graalvm/compiler/code/DataSection$Patches;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.nio.ByteBuffer buffer
        start local 1 // org.graalvm.compiler.code.DataSection$Data data
        start local 2 // org.graalvm.compiler.code.DataSection$Patches patch
         0: .line 396
            aload 1 /* data */
            aload 0 /* buffer */
            aload 2 /* patch */
            invokevirtual org.graalvm.compiler.code.DataSection$Data.emit:(Ljava/nio/ByteBuffer;Lorg/graalvm/compiler/code/DataSection$Patches;)V
         1: .line 397
            return
        end local 2 // org.graalvm.compiler.code.DataSection$Patches patch
        end local 1 // org.graalvm.compiler.code.DataSection$Data data
        end local 0 // java.nio.ByteBuffer buffer
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  buffer  Ljava/nio/ByteBuffer;
            0    2     1    data  Lorg/graalvm/compiler/code/DataSection$Data;
            0    2     2   patch  Lorg/graalvm/compiler/code/DataSection$Patches;
    MethodParameters:
        Name  Flags
      buffer  
      data    
      patch   

  public java.util.Iterator<org.graalvm.compiler.code.DataSection$Data> iterator();
    descriptor: ()Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.code.DataSection this
         0: .line 401
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            areturn
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/code/DataSection;
    Signature: ()Ljava/util/Iterator<Lorg/graalvm/compiler/code/DataSection$Data;>;

  private static int lcm(int, int);
    descriptor: (II)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // int x
        start local 1 // int y
         0: .line 405
            iload 0 /* x */
            ifne 2
         1: .line 406
            iload 1 /* y */
            ireturn
         2: .line 407
      StackMap locals:
      StackMap stack:
            iload 1 /* y */
            ifne 4
         3: .line 408
            iload 0 /* x */
            ireturn
         4: .line 411
      StackMap locals:
      StackMap stack:
            iload 0 /* x */
            iload 1 /* y */
            invokestatic java.lang.Math.max:(II)I
            istore 2 /* a */
        start local 2 // int a
         5: .line 412
            iload 0 /* x */
            iload 1 /* y */
            invokestatic java.lang.Math.min:(II)I
            istore 3 /* b */
        start local 3 // int b
         6: .line 413
            goto 10
         7: .line 414
      StackMap locals: int int
      StackMap stack:
            iload 2 /* a */
            iload 3 /* b */
            irem
            istore 4 /* tmp */
        start local 4 // int tmp
         8: .line 415
            iload 3 /* b */
            istore 2 /* a */
         9: .line 416
            iload 4 /* tmp */
            istore 3 /* b */
        end local 4 // int tmp
        10: .line 413
      StackMap locals:
      StackMap stack:
            iload 3 /* b */
            ifgt 7
        11: .line 419
            iload 2 /* a */
            istore 4 /* gcd */
        start local 4 // int gcd
        12: .line 420
            iload 0 /* x */
            iload 1 /* y */
            imul
            iload 4 /* gcd */
            idiv
            ireturn
        end local 4 // int gcd
        end local 3 // int b
        end local 2 // int a
        end local 1 // int y
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0     x  I
            0   13     1     y  I
            5   13     2     a  I
            6   13     3     b  I
            8   10     4   tmp  I
           12   13     4   gcd  I
    MethodParameters:
      Name  Flags
      x     
      y     

  private static int align(int, int);
    descriptor: (II)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int position
        start local 1 // int alignment
         0: .line 424
            iload 0 /* position */
            iload 1 /* alignment */
            iadd
            iconst_1
            isub
            iload 1 /* alignment */
            idiv
            iload 1 /* alignment */
            imul
            ireturn
        end local 1 // int alignment
        end local 0 // int position
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0   position  I
            0    1     1  alignment  I
    MethodParameters:
           Name  Flags
      position   
      alignment  

  private void checkClosed();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.code.DataSection this
         0: .line 428
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.closed:Z
            ifne 2
         1: .line 429
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         2: .line 431
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/code/DataSection;

  private void checkOpen();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.code.DataSection this
         0: .line 434
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.closed:Z
            ifeq 2
         1: .line 435
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         2: .line 437
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/graalvm/compiler/code/DataSection;

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.code.DataSection this
         0: .line 440
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.code.DataSection.checkOpen:()V
         1: .line 441
            aload 0 /* this */
            getfield org.graalvm.compiler.code.DataSection.dataItems:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.clear:()V
         2: .line 442
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.code.DataSection.sectionAlignment:I
         3: .line 443
            aload 0 /* this */
            iconst_0
            putfield org.graalvm.compiler.code.DataSection.sectionSize:I
         4: .line 444
            return
        end local 0 // org.graalvm.compiler.code.DataSection this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/graalvm/compiler/code/DataSection;

  private static int lambda$0(org.graalvm.compiler.code.DataSection$Data, org.graalvm.compiler.code.DataSection$Data);
    descriptor: (Lorg/graalvm/compiler/code/DataSection$Data;Lorg/graalvm/compiler/code/DataSection$Data;)I
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.graalvm.compiler.code.DataSection$Data a
        start local 1 // org.graalvm.compiler.code.DataSection$Data b
         0: .line 311
            aload 0 /* a */
            getfield org.graalvm.compiler.code.DataSection$Data.alignment:I
            aload 1 /* b */
            getfield org.graalvm.compiler.code.DataSection$Data.alignment:I
            isub
            ireturn
        end local 1 // org.graalvm.compiler.code.DataSection$Data b
        end local 0 // org.graalvm.compiler.code.DataSection$Data a
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     a  Lorg/graalvm/compiler/code/DataSection$Data;
            0    1     1     b  Lorg/graalvm/compiler/code/DataSection$Data;

  private static void lambda$1(jdk.vm.ci.code.site.DataSectionReference, java.lang.Integer);
    descriptor: (Ljdk/vm/ci/code/site/DataSectionReference;Ljava/lang/Integer;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // jdk.vm.ci.code.site.DataSectionReference r
        start local 1 // java.lang.Integer s
         0: .line 359
            return
        end local 1 // java.lang.Integer s
        end local 0 // jdk.vm.ci.code.site.DataSectionReference r
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     r  Ljdk/vm/ci/code/site/DataSectionReference;
            0    1     1     s  Ljava/lang/Integer;
}
Signature: Ljava/lang/Object;Ljava/lang/Iterable<Lorg/graalvm/compiler/code/DataSection$Data;>;
SourceFile: "DataSection.java"
NestMembers:
  org.graalvm.compiler.code.DataSection$Data  org.graalvm.compiler.code.DataSection$PackedData  org.graalvm.compiler.code.DataSection$Patches  org.graalvm.compiler.code.DataSection$RawData  org.graalvm.compiler.code.DataSection$SerializableData  org.graalvm.compiler.code.DataSection$ZeroData  org.graalvm.compiler.code.DataSection$ZeroData$1  org.graalvm.compiler.code.DataSection$ZeroData$2  org.graalvm.compiler.code.DataSection$ZeroData$3  org.graalvm.compiler.code.DataSection$ZeroData$4
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Data = org.graalvm.compiler.code.DataSection$Data of org.graalvm.compiler.code.DataSection
  public final PackedData = org.graalvm.compiler.code.DataSection$PackedData of org.graalvm.compiler.code.DataSection
  public abstract Patches = org.graalvm.compiler.code.DataSection$Patches of org.graalvm.compiler.code.DataSection
  public final RawData = org.graalvm.compiler.code.DataSection$RawData of org.graalvm.compiler.code.DataSection
  public final SerializableData = org.graalvm.compiler.code.DataSection$SerializableData of org.graalvm.compiler.code.DataSection
  public ZeroData = org.graalvm.compiler.code.DataSection$ZeroData of org.graalvm.compiler.code.DataSection