public class jdk.internal.foreign.abi.aarch64.AArch64VaList implements jdk.incubator.foreign.CLinker$VaList
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.internal.foreign.abi.aarch64.AArch64VaList
  super_class: java.lang.Object
{
  private static final jdk.internal.misc.Unsafe U;
    descriptor: Ljdk/internal/misc/Unsafe;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final java.lang.Class<?> CARRIER;
    descriptor: Ljava/lang/Class;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/Class<*>;

  static final jdk.incubator.foreign.GroupLayout LAYOUT;
    descriptor: Ljdk/incubator/foreign/GroupLayout;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static final jdk.incubator.foreign.MemoryLayout GP_REG;
    descriptor: Ljdk/incubator/foreign/MemoryLayout;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.incubator.foreign.MemoryLayout FP_REG;
    descriptor: Ljdk/incubator/foreign/MemoryLayout;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.incubator.foreign.MemoryLayout LAYOUT_GP_REGS;
    descriptor: Ljdk/incubator/foreign/MemoryLayout;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.incubator.foreign.MemoryLayout LAYOUT_FP_REGS;
    descriptor: Ljdk/incubator/foreign/MemoryLayout;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int GP_SLOT_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int FP_SLOT_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int MAX_GP_OFFSET;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int MAX_FP_OFFSET;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.VarHandle VH_stack;
    descriptor: Ljava/lang/invoke/VarHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.VarHandle VH_gr_top;
    descriptor: Ljava/lang/invoke/VarHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.VarHandle VH_vr_top;
    descriptor: Ljava/lang/invoke/VarHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.VarHandle VH_gr_offs;
    descriptor: Ljava/lang/invoke/VarHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.VarHandle VH_vr_offs;
    descriptor: Ljava/lang/invoke/VarHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.ref.Cleaner cleaner;
    descriptor: Ljava/lang/ref/Cleaner;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.incubator.foreign.CLinker$VaList EMPTY;
    descriptor: Ljdk/incubator/foreign/CLinker$VaList;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final jdk.incubator.foreign.MemorySegment segment;
    descriptor: Ljdk/incubator/foreign/MemorySegment;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.incubator.foreign.MemorySegment gpRegsArea;
    descriptor: Ljdk/incubator/foreign/MemorySegment;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.incubator.foreign.MemorySegment fpRegsArea;
    descriptor: Ljdk/incubator/foreign/MemorySegment;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.List<jdk.incubator.foreign.MemorySegment> attachedSegments;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Ljdk/incubator/foreign/MemorySegment;>;

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

  private static volatile int[] $SWITCH_TABLE$jdk$internal$foreign$abi$aarch64$TypeClass;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=0, args_size=0
         0: .line 49
            ldc Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            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 jdk.internal.foreign.abi.aarch64.AArch64VaList.$assertionsDisabled:Z
         3: .line 50
            invokestatic jdk.internal.misc.Unsafe.getUnsafe:()Ljdk/internal/misc/Unsafe;
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.U:Ljdk/internal/misc/Unsafe;
         4: .line 52
            ldc Ljdk/incubator/foreign/MemoryAddress;
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.CARRIER:Ljava/lang/Class;
         5: .line 65
            iconst_5
            anewarray jdk.incubator.foreign.MemoryLayout
            dup
            iconst_0
         6: .line 66
            getstatic jdk.internal.foreign.PlatformLayouts$AArch64.C_POINTER:Ljdk/incubator/foreign/ValueLayout;
            ldc "__stack"
            invokevirtual jdk.incubator.foreign.ValueLayout.withName:(Ljava/lang/String;)Ljdk/incubator/foreign/ValueLayout;
            aastore
            dup
            iconst_1
         7: .line 67
            getstatic jdk.internal.foreign.PlatformLayouts$AArch64.C_POINTER:Ljdk/incubator/foreign/ValueLayout;
            ldc "__gr_top"
            invokevirtual jdk.incubator.foreign.ValueLayout.withName:(Ljava/lang/String;)Ljdk/incubator/foreign/ValueLayout;
            aastore
            dup
            iconst_2
         8: .line 68
            getstatic jdk.internal.foreign.PlatformLayouts$AArch64.C_POINTER:Ljdk/incubator/foreign/ValueLayout;
            ldc "__vr_top"
            invokevirtual jdk.incubator.foreign.ValueLayout.withName:(Ljava/lang/String;)Ljdk/incubator/foreign/ValueLayout;
            aastore
            dup
            iconst_3
         9: .line 69
            getstatic jdk.internal.foreign.PlatformLayouts$AArch64.C_INT:Ljdk/incubator/foreign/ValueLayout;
            ldc "__gr_offs"
            invokevirtual jdk.incubator.foreign.ValueLayout.withName:(Ljava/lang/String;)Ljdk/incubator/foreign/ValueLayout;
            aastore
            dup
            iconst_4
        10: .line 70
            getstatic jdk.internal.foreign.PlatformLayouts$AArch64.C_INT:Ljdk/incubator/foreign/ValueLayout;
            ldc "__vr_offs"
            invokevirtual jdk.incubator.foreign.ValueLayout.withName:(Ljava/lang/String;)Ljdk/incubator/foreign/ValueLayout;
            aastore
        11: .line 65
            invokestatic jdk.incubator.foreign.MemoryLayout.ofStruct:([Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/GroupLayout;
        12: .line 71
            ldc "__va_list"
            invokevirtual jdk.incubator.foreign.GroupLayout.withName:(Ljava/lang/String;)Ljdk/incubator/foreign/GroupLayout;
        13: .line 65
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
        14: .line 74
            ldc 64
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            invokestatic jdk.incubator.foreign.MemoryLayout.ofValueBits:(JLjava/nio/ByteOrder;)Ljdk/incubator/foreign/ValueLayout;
        15: .line 73
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.GP_REG:Ljdk/incubator/foreign/MemoryLayout;
        16: .line 76
            ldc 128
            invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
            invokestatic jdk.incubator.foreign.MemoryLayout.ofValueBits:(JLjava/nio/ByteOrder;)Ljdk/incubator/foreign/ValueLayout;
        17: .line 75
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.FP_REG:Ljdk/incubator/foreign/MemoryLayout;
        18: .line 79
            ldc 8
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.GP_REG:Ljdk/incubator/foreign/MemoryLayout;
            invokestatic jdk.incubator.foreign.MemoryLayout.ofSequence:(JLjdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/SequenceLayout;
        19: .line 78
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT_GP_REGS:Ljdk/incubator/foreign/MemoryLayout;
        20: .line 81
            ldc 8
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.FP_REG:Ljdk/incubator/foreign/MemoryLayout;
            invokestatic jdk.incubator.foreign.MemoryLayout.ofSequence:(JLjdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/SequenceLayout;
        21: .line 80
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT_FP_REGS:Ljdk/incubator/foreign/MemoryLayout;
        22: .line 83
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.GP_REG:Ljdk/incubator/foreign/MemoryLayout;
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            l2i
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.GP_SLOT_SIZE:I
        23: .line 84
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.FP_REG:Ljdk/incubator/foreign/MemoryLayout;
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            l2i
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.FP_SLOT_SIZE:I
        24: .line 86
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT_GP_REGS:Ljdk/incubator/foreign/MemoryLayout;
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            l2i
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.MAX_GP_OFFSET:I
        25: .line 87
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT_FP_REGS:Ljdk/incubator/foreign/MemoryLayout;
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            l2i
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.MAX_FP_OFFSET:I
        26: .line 90
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            iconst_1
            anewarray jdk.incubator.foreign.MemoryLayout$PathElement
            dup
            iconst_0
            ldc "__stack"
            invokestatic jdk.incubator.foreign.MemoryLayout$PathElement.groupElement:(Ljava/lang/String;)Ljdk/incubator/foreign/MemoryLayout$PathElement;
            aastore
            invokevirtual jdk.incubator.foreign.GroupLayout.varHandle:(Ljava/lang/Class;[Ljdk/incubator/foreign/MemoryLayout$PathElement;)Ljava/lang/invoke/VarHandle;
            invokestatic jdk.incubator.foreign.MemoryHandles.asAddressVarHandle:(Ljava/lang/invoke/VarHandle;)Ljava/lang/invoke/VarHandle;
        27: .line 89
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_stack:Ljava/lang/invoke/VarHandle;
        28: .line 92
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            iconst_1
            anewarray jdk.incubator.foreign.MemoryLayout$PathElement
            dup
            iconst_0
            ldc "__gr_top"
            invokestatic jdk.incubator.foreign.MemoryLayout$PathElement.groupElement:(Ljava/lang/String;)Ljdk/incubator/foreign/MemoryLayout$PathElement;
            aastore
            invokevirtual jdk.incubator.foreign.GroupLayout.varHandle:(Ljava/lang/Class;[Ljdk/incubator/foreign/MemoryLayout$PathElement;)Ljava/lang/invoke/VarHandle;
            invokestatic jdk.incubator.foreign.MemoryHandles.asAddressVarHandle:(Ljava/lang/invoke/VarHandle;)Ljava/lang/invoke/VarHandle;
        29: .line 91
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_top:Ljava/lang/invoke/VarHandle;
        30: .line 94
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            iconst_1
            anewarray jdk.incubator.foreign.MemoryLayout$PathElement
            dup
            iconst_0
            ldc "__vr_top"
            invokestatic jdk.incubator.foreign.MemoryLayout$PathElement.groupElement:(Ljava/lang/String;)Ljdk/incubator/foreign/MemoryLayout$PathElement;
            aastore
            invokevirtual jdk.incubator.foreign.GroupLayout.varHandle:(Ljava/lang/Class;[Ljdk/incubator/foreign/MemoryLayout$PathElement;)Ljava/lang/invoke/VarHandle;
            invokestatic jdk.incubator.foreign.MemoryHandles.asAddressVarHandle:(Ljava/lang/invoke/VarHandle;)Ljava/lang/invoke/VarHandle;
        31: .line 93
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_top:Ljava/lang/invoke/VarHandle;
        32: .line 96
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            iconst_1
            anewarray jdk.incubator.foreign.MemoryLayout$PathElement
            dup
            iconst_0
            ldc "__gr_offs"
            invokestatic jdk.incubator.foreign.MemoryLayout$PathElement.groupElement:(Ljava/lang/String;)Ljdk/incubator/foreign/MemoryLayout$PathElement;
            aastore
            invokevirtual jdk.incubator.foreign.GroupLayout.varHandle:(Ljava/lang/Class;[Ljdk/incubator/foreign/MemoryLayout$PathElement;)Ljava/lang/invoke/VarHandle;
        33: .line 95
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_offs:Ljava/lang/invoke/VarHandle;
        34: .line 98
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            iconst_1
            anewarray jdk.incubator.foreign.MemoryLayout$PathElement
            dup
            iconst_0
            ldc "__vr_offs"
            invokestatic jdk.incubator.foreign.MemoryLayout$PathElement.groupElement:(Ljava/lang/String;)Ljdk/incubator/foreign/MemoryLayout$PathElement;
            aastore
            invokevirtual jdk.incubator.foreign.GroupLayout.varHandle:(Ljava/lang/Class;[Ljdk/incubator/foreign/MemoryLayout$PathElement;)Ljava/lang/invoke/VarHandle;
        35: .line 97
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_offs:Ljava/lang/invoke/VarHandle;
        36: .line 100
            invokestatic java.lang.ref.Cleaner.create:()Ljava/lang/ref/Cleaner;
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.cleaner:Ljava/lang/ref/Cleaner;
        37: .line 102
            new jdk.internal.foreign.abi.SharedUtils$EmptyVaList
            dup
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.emptyListAddress:()Ljdk/incubator/foreign/MemoryAddress;
            invokespecial jdk.internal.foreign.abi.SharedUtils$EmptyVaList.<init>:(Ljdk/incubator/foreign/MemoryAddress;)V
        38: .line 101
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.EMPTY:Ljdk/incubator/foreign/CLinker$VaList;
        39: .line 102
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(jdk.incubator.foreign.MemorySegment, jdk.incubator.foreign.MemorySegment, jdk.incubator.foreign.MemorySegment, java.util.List<jdk.incubator.foreign.MemorySegment>);
    descriptor: (Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemorySegment;Ljava/util/List;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.MemorySegment segment
        start local 2 // jdk.incubator.foreign.MemorySegment gpRegsArea
        start local 3 // jdk.incubator.foreign.MemorySegment fpRegsArea
        start local 4 // java.util.List attachedSegments
         0: .line 109
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 111
            aload 0 /* this */
            aload 1 /* segment */
            putfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
         2: .line 112
            aload 0 /* this */
            aload 2 /* gpRegsArea */
            putfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
         3: .line 113
            aload 0 /* this */
            aload 3 /* fpRegsArea */
            putfield jdk.internal.foreign.abi.aarch64.AArch64VaList.fpRegsArea:Ljdk/incubator/foreign/MemorySegment;
         4: .line 114
            aload 0 /* this */
            aload 4 /* attachedSegments */
            putfield jdk.internal.foreign.abi.aarch64.AArch64VaList.attachedSegments:Ljava/util/List;
         5: .line 115
            return
        end local 4 // java.util.List attachedSegments
        end local 3 // jdk.incubator.foreign.MemorySegment fpRegsArea
        end local 2 // jdk.incubator.foreign.MemorySegment gpRegsArea
        end local 1 // jdk.incubator.foreign.MemorySegment segment
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0              this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    6     1           segment  Ljdk/incubator/foreign/MemorySegment;
            0    6     2        gpRegsArea  Ljdk/incubator/foreign/MemorySegment;
            0    6     3        fpRegsArea  Ljdk/incubator/foreign/MemorySegment;
            0    6     4  attachedSegments  Ljava/util/List<Ljdk/incubator/foreign/MemorySegment;>;
    Signature: (Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemorySegment;Ljava/util/List<Ljdk/incubator/foreign/MemorySegment;>;)V
    MethodParameters:
                  Name  Flags
      segment           
      gpRegsArea        
      fpRegsArea        
      attachedSegments  

  private static jdk.internal.foreign.abi.aarch64.AArch64VaList readFromSegment(jdk.incubator.foreign.MemorySegment);
    descriptor: (Ljdk/incubator/foreign/MemorySegment;)Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=3, args_size=1
        start local 0 // jdk.incubator.foreign.MemorySegment segment
         0: .line 118
            aload 0 /* segment */
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.grTop:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.MAX_GP_OFFSET:I
            ineg
            i2l
            invokeinterface jdk.incubator.foreign.MemoryAddress.addOffset:(J)Ljdk/incubator/foreign/MemoryAddress;
         1: .line 119
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.MAX_GP_OFFSET:I
            i2l
            invokeinterface jdk.incubator.foreign.MemoryAddress.asSegmentRestricted:(J)Ljdk/incubator/foreign/MemorySegment;
            aload 0 /* segment */
            invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
         2: .line 118
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.handoffIfNeeded:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
            astore 1 /* gpRegsArea */
        start local 1 // jdk.incubator.foreign.MemorySegment gpRegsArea
         3: .line 121
            aload 0 /* segment */
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.vrTop:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.MAX_FP_OFFSET:I
            ineg
            i2l
            invokeinterface jdk.incubator.foreign.MemoryAddress.addOffset:(J)Ljdk/incubator/foreign/MemoryAddress;
         4: .line 122
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.MAX_FP_OFFSET:I
            i2l
            invokeinterface jdk.incubator.foreign.MemoryAddress.asSegmentRestricted:(J)Ljdk/incubator/foreign/MemorySegment;
            aload 0 /* segment */
            invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
         5: .line 121
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.handoffIfNeeded:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
            astore 2 /* fpRegsArea */
        start local 2 // jdk.incubator.foreign.MemorySegment fpRegsArea
         6: .line 123
            new jdk.internal.foreign.abi.aarch64.AArch64VaList
            dup
            aload 0 /* segment */
            aload 1 /* gpRegsArea */
            aload 2 /* fpRegsArea */
            aload 1 /* gpRegsArea */
            aload 2 /* fpRegsArea */
            invokestatic java.util.List.of:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/List;
            invokespecial jdk.internal.foreign.abi.aarch64.AArch64VaList.<init>:(Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemorySegment;Ljava/util/List;)V
            areturn
        end local 2 // jdk.incubator.foreign.MemorySegment fpRegsArea
        end local 1 // jdk.incubator.foreign.MemorySegment gpRegsArea
        end local 0 // jdk.incubator.foreign.MemorySegment segment
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0     segment  Ljdk/incubator/foreign/MemorySegment;
            3    7     1  gpRegsArea  Ljdk/incubator/foreign/MemorySegment;
            6    7     2  fpRegsArea  Ljdk/incubator/foreign/MemorySegment;
    MethodParameters:
         Name  Flags
      segment  

  private static jdk.incubator.foreign.MemoryAddress emptyListAddress();
    descriptor: ()Ljdk/incubator/foreign/MemoryAddress;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=0
         0: .line 127
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.U:Ljdk/internal/misc/Unsafe;
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
            invokevirtual jdk.incubator.foreign.GroupLayout.byteSize:()J
            invokevirtual jdk.internal.misc.Unsafe.allocateMemory:(J)J
            lstore 0 /* ptr */
        start local 0 // long ptr
         1: .line 128
            lload 0 /* ptr */
            invokestatic jdk.incubator.foreign.MemoryAddress.ofLong:(J)Ljdk/incubator/foreign/MemoryAddress;
         2: .line 129
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
            invokevirtual jdk.incubator.foreign.GroupLayout.byteSize:()J
            lload 0 /* ptr */
            invokedynamic run(J)Ljava/lang/Runnable;
              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:
                  ()V
                  jdk/internal/foreign/abi/aarch64/AArch64VaList.lambda$0(J)V (6)
                  ()V
            aconst_null
            invokeinterface jdk.incubator.foreign.MemoryAddress.asSegmentRestricted:(JLjava/lang/Runnable;Ljava/lang/Object;)Ljdk/incubator/foreign/MemorySegment;
         3: .line 130
            invokeinterface jdk.incubator.foreign.MemorySegment.share:()Ljdk/incubator/foreign/MemorySegment;
         4: .line 128
            astore 2 /* ms */
        start local 2 // jdk.incubator.foreign.MemorySegment ms
         5: .line 131
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.cleaner:Ljava/lang/ref/Cleaner;
            ldc Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            aload 2 /* ms */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic run(Ljdk/incubator/foreign/MemorySegment;)Ljava/lang/Runnable;
              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:
                  ()V
                  jdk/incubator/foreign/MemorySegment.close()V (9 itf)
                  ()V
            invokevirtual java.lang.ref.Cleaner.register:(Ljava/lang/Object;Ljava/lang/Runnable;)Ljava/lang/ref/Cleaner$Cleanable;
            pop
         6: .line 132
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_stack:Ljava/lang/invoke/VarHandle;
            aload 2 /* ms */
            getstatic jdk.incubator.foreign.MemoryAddress.NULL:Ljdk/incubator/foreign/MemoryAddress;
            invokevirtual java.lang.invoke.VarHandle.set:(Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemoryAddress;)V
         7: .line 133
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_top:Ljava/lang/invoke/VarHandle;
            aload 2 /* ms */
            getstatic jdk.incubator.foreign.MemoryAddress.NULL:Ljdk/incubator/foreign/MemoryAddress;
            invokevirtual java.lang.invoke.VarHandle.set:(Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemoryAddress;)V
         8: .line 134
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_top:Ljava/lang/invoke/VarHandle;
            aload 2 /* ms */
            getstatic jdk.incubator.foreign.MemoryAddress.NULL:Ljdk/incubator/foreign/MemoryAddress;
            invokevirtual java.lang.invoke.VarHandle.set:(Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemoryAddress;)V
         9: .line 135
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_offs:Ljava/lang/invoke/VarHandle;
            aload 2 /* ms */
            iconst_0
            invokevirtual java.lang.invoke.VarHandle.set:(Ljdk/incubator/foreign/MemorySegment;I)V
        10: .line 136
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_offs:Ljava/lang/invoke/VarHandle;
            aload 2 /* ms */
            iconst_0
            invokevirtual java.lang.invoke.VarHandle.set:(Ljdk/incubator/foreign/MemorySegment;I)V
        11: .line 137
            aload 2 /* ms */
            invokeinterface jdk.incubator.foreign.MemorySegment.address:()Ljdk/incubator/foreign/MemoryAddress;
            areturn
        end local 2 // jdk.incubator.foreign.MemorySegment ms
        end local 0 // long ptr
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            1   12     0   ptr  J
            5   12     2    ms  Ljdk/incubator/foreign/MemorySegment;

  public static jdk.incubator.foreign.CLinker$VaList empty();
    descriptor: ()Ljdk/incubator/foreign/CLinker$VaList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 141
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.EMPTY:Ljdk/incubator/foreign/CLinker$VaList;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private jdk.incubator.foreign.MemoryAddress grTop();
    descriptor: ()Ljdk/incubator/foreign/MemoryAddress;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 145
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.grTop:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
            areturn
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;

  private static jdk.incubator.foreign.MemoryAddress grTop(jdk.incubator.foreign.MemorySegment);
    descriptor: (Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.incubator.foreign.MemorySegment segment
         0: .line 149
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_top:Ljava/lang/invoke/VarHandle;
            aload 0 /* segment */
            invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
            areturn
        end local 0 // jdk.incubator.foreign.MemorySegment segment
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  segment  Ljdk/incubator/foreign/MemorySegment;
    MethodParameters:
         Name  Flags
      segment  

  private jdk.incubator.foreign.MemoryAddress vrTop();
    descriptor: ()Ljdk/incubator/foreign/MemoryAddress;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 153
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.vrTop:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
            areturn
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;

  private static jdk.incubator.foreign.MemoryAddress vrTop(jdk.incubator.foreign.MemorySegment);
    descriptor: (Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.incubator.foreign.MemorySegment segment
         0: .line 157
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_top:Ljava/lang/invoke/VarHandle;
            aload 0 /* segment */
            invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
            areturn
        end local 0 // jdk.incubator.foreign.MemorySegment segment
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  segment  Ljdk/incubator/foreign/MemorySegment;
    MethodParameters:
         Name  Flags
      segment  

  private int grOffs();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 161
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_offs:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)I
            istore 1 /* offs */
        start local 1 // int offs
         1: .line 162
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$assertionsDisabled:Z
            ifne 2
            iload 1 /* offs */
            ifle 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 163
      StackMap locals: int
      StackMap stack:
            iload 1 /* offs */
            ireturn
        end local 1 // int offs
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            1    3     1  offs  I

  private int vrOffs();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 167
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_offs:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)I
            istore 1 /* offs */
        start local 1 // int offs
         1: .line 168
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$assertionsDisabled:Z
            ifne 2
            iload 1 /* offs */
            ifle 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 169
      StackMap locals: int
      StackMap stack:
            iload 1 /* offs */
            ireturn
        end local 1 // int offs
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            1    3     1  offs  I

  private jdk.incubator.foreign.MemoryAddress stackPtr();
    descriptor: ()Ljdk/incubator/foreign/MemoryAddress;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 173
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_stack:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
            areturn
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;

  private void stackPtr(jdk.incubator.foreign.MemoryAddress);
    descriptor: (Ljdk/incubator/foreign/MemoryAddress;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.MemoryAddress ptr
         0: .line 177
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_stack:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            aload 1 /* ptr */
            invokevirtual java.lang.invoke.VarHandle.set:(Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemoryAddress;)V
         1: .line 178
            return
        end local 1 // jdk.incubator.foreign.MemoryAddress ptr
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    2     1   ptr  Ljdk/incubator/foreign/MemoryAddress;
    MethodParameters:
      Name  Flags
      ptr   

  private void consumeGPSlots(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // int num
         0: .line 181
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_offs:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)I
            istore 2 /* old */
        start local 2 // int old
         1: .line 182
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_offs:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            iload 2 /* old */
            iload 1 /* num */
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.GP_SLOT_SIZE:I
            imul
            iadd
            invokevirtual java.lang.invoke.VarHandle.set:(Ljdk/incubator/foreign/MemorySegment;I)V
         2: .line 183
            return
        end local 2 // int old
        end local 1 // int num
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    3     1   num  I
            1    3     2   old  I
    MethodParameters:
      Name  Flags
      num   

  private void consumeFPSlots(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // int num
         0: .line 186
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_offs:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)I
            istore 2 /* old */
        start local 2 // int old
         1: .line 187
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_offs:Ljava/lang/invoke/VarHandle;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            iload 2 /* old */
            iload 1 /* num */
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.FP_SLOT_SIZE:I
            imul
            iadd
            invokevirtual java.lang.invoke.VarHandle.set:(Ljdk/incubator/foreign/MemorySegment;I)V
         2: .line 188
            return
        end local 2 // int old
        end local 1 // int num
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    3     1   num  I
            1    3     2   old  I
    MethodParameters:
      Name  Flags
      num   

  private long currentGPOffset();
    descriptor: ()J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 195
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
            invokeinterface jdk.incubator.foreign.MemorySegment.byteSize:()J
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.grOffs:()I
            i2l
            ladd
            lreturn
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;

  private long currentFPOffset();
    descriptor: ()J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 203
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.fpRegsArea:Ljdk/incubator/foreign/MemorySegment;
            invokeinterface jdk.incubator.foreign.MemorySegment.byteSize:()J
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.vrOffs:()I
            i2l
            ladd
            lreturn
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;

  private void preAlignStack(jdk.incubator.foreign.MemoryLayout);
    descriptor: (Ljdk/incubator/foreign/MemoryLayout;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.MemoryLayout layout
         0: .line 207
            aload 1 /* layout */
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteAlignment:()J
            ldc 8
            lcmp
            ifle 2
         1: .line 208
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.stackPtr:()Ljdk/incubator/foreign/MemoryAddress;
            ldc 16
            invokestatic jdk.internal.foreign.Utils.alignUp:(Ljdk/incubator/foreign/MemoryAddress;J)Ljdk/incubator/foreign/MemoryAddress;
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.stackPtr:(Ljdk/incubator/foreign/MemoryAddress;)V
         2: .line 210
      StackMap locals:
      StackMap stack:
            return
        end local 1 // jdk.incubator.foreign.MemoryLayout layout
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    3     1  layout  Ljdk/incubator/foreign/MemoryLayout;
    MethodParameters:
        Name  Flags
      layout  

  private void postAlignStack(jdk.incubator.foreign.MemoryLayout);
    descriptor: (Ljdk/incubator/foreign/MemoryLayout;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.MemoryLayout layout
         0: .line 213
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.stackPtr:()Ljdk/incubator/foreign/MemoryAddress;
            aload 1 /* layout */
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            invokeinterface jdk.incubator.foreign.MemoryAddress.addOffset:(J)Ljdk/incubator/foreign/MemoryAddress;
            ldc 8
            invokestatic jdk.internal.foreign.Utils.alignUp:(Ljdk/incubator/foreign/MemoryAddress;J)Ljdk/incubator/foreign/MemoryAddress;
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.stackPtr:(Ljdk/incubator/foreign/MemoryAddress;)V
         1: .line 214
            return
        end local 1 // jdk.incubator.foreign.MemoryLayout layout
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    2     1  layout  Ljdk/incubator/foreign/MemoryLayout;
    MethodParameters:
        Name  Flags
      layout  

  public int vargAsInt(jdk.incubator.foreign.MemoryLayout);
    descriptor: (Ljdk/incubator/foreign/MemoryLayout;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.MemoryLayout layout
         0: .line 218
            aload 0 /* this */
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aload 1 /* layout */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.read:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            ireturn
        end local 1 // jdk.incubator.foreign.MemoryLayout layout
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    1     1  layout  Ljdk/incubator/foreign/MemoryLayout;
    MethodParameters:
        Name  Flags
      layout  

  public long vargAsLong(jdk.incubator.foreign.MemoryLayout);
    descriptor: (Ljdk/incubator/foreign/MemoryLayout;)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.MemoryLayout layout
         0: .line 223
            aload 0 /* this */
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            aload 1 /* layout */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.read:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/Object;
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            lreturn
        end local 1 // jdk.incubator.foreign.MemoryLayout layout
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    1     1  layout  Ljdk/incubator/foreign/MemoryLayout;
    MethodParameters:
        Name  Flags
      layout  

  public double vargAsDouble(jdk.incubator.foreign.MemoryLayout);
    descriptor: (Ljdk/incubator/foreign/MemoryLayout;)D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.MemoryLayout layout
         0: .line 228
            aload 0 /* this */
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            aload 1 /* layout */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.read:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/Object;
            checkcast java.lang.Double
            invokevirtual java.lang.Double.doubleValue:()D
            dreturn
        end local 1 // jdk.incubator.foreign.MemoryLayout layout
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    1     1  layout  Ljdk/incubator/foreign/MemoryLayout;
    MethodParameters:
        Name  Flags
      layout  

  public jdk.incubator.foreign.MemoryAddress vargAsAddress(jdk.incubator.foreign.MemoryLayout);
    descriptor: (Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/MemoryAddress;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.MemoryLayout layout
         0: .line 233
            aload 0 /* this */
            ldc Ljdk/incubator/foreign/MemoryAddress;
            aload 1 /* layout */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.read:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/Object;
            checkcast jdk.incubator.foreign.MemoryAddress
            areturn
        end local 1 // jdk.incubator.foreign.MemoryLayout layout
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    1     1  layout  Ljdk/incubator/foreign/MemoryLayout;
    MethodParameters:
        Name  Flags
      layout  

  public jdk.incubator.foreign.MemorySegment vargAsSegment(jdk.incubator.foreign.MemoryLayout);
    descriptor: (Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/MemorySegment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.MemoryLayout layout
         0: .line 238
            aload 0 /* this */
            ldc Ljdk/incubator/foreign/MemorySegment;
            aload 1 /* layout */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.read:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/Object;
            checkcast jdk.incubator.foreign.MemorySegment
            areturn
        end local 1 // jdk.incubator.foreign.MemoryLayout layout
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    1     1  layout  Ljdk/incubator/foreign/MemoryLayout;
    MethodParameters:
        Name  Flags
      layout  

  public jdk.incubator.foreign.MemorySegment vargAsSegment(jdk.incubator.foreign.MemoryLayout, jdk.incubator.foreign.NativeScope);
    descriptor: (Ljdk/incubator/foreign/MemoryLayout;Ljdk/incubator/foreign/NativeScope;)Ljdk/incubator/foreign/MemorySegment;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.MemoryLayout layout
        start local 2 // jdk.incubator.foreign.NativeScope scope
         0: .line 243
            aload 2 /* scope */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 244
            aload 0 /* this */
            ldc Ljdk/incubator/foreign/MemorySegment;
            aload 1 /* layout */
            aload 2 /* scope */
            invokestatic jdk.internal.foreign.abi.SharedUtils$Allocator.ofScope:(Ljdk/incubator/foreign/NativeScope;)Ljdk/internal/foreign/abi/SharedUtils$Allocator;
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.read:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;Ljdk/internal/foreign/abi/SharedUtils$Allocator;)Ljava/lang/Object;
            checkcast jdk.incubator.foreign.MemorySegment
            areturn
        end local 2 // jdk.incubator.foreign.NativeScope scope
        end local 1 // jdk.incubator.foreign.MemoryLayout layout
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    2     1  layout  Ljdk/incubator/foreign/MemoryLayout;
            0    2     2   scope  Ljdk/incubator/foreign/NativeScope;
    MethodParameters:
        Name  Flags
      layout  
      scope   

  private  read(java.lang.Class<?>, jdk.incubator.foreign.MemoryLayout);
    descriptor: (Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // java.lang.Class carrier
        start local 2 // jdk.incubator.foreign.MemoryLayout layout
         0: .line 248
            aload 0 /* this */
            aload 1 /* carrier */
            aload 2 /* layout */
            invokedynamic allocate()Ljdk/internal/foreign/abi/SharedUtils$Allocator;
              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:
                  (JJ)Ljdk/incubator/foreign/MemorySegment;
                  jdk/incubator/foreign/MemorySegment.allocateNative(JJ)Ljdk/incubator/foreign/MemorySegment; (6 itf)
                  (JJ)Ljdk/incubator/foreign/MemorySegment;
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.read:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;Ljdk/internal/foreign/abi/SharedUtils$Allocator;)Ljava/lang/Object;
            areturn
        end local 2 // jdk.incubator.foreign.MemoryLayout layout
        end local 1 // java.lang.Class carrier
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    1     1  carrier  Ljava/lang/Class<*>;
            0    1     2   layout  Ljdk/incubator/foreign/MemoryLayout;
    Signature: (Ljava/lang/Class<*>;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/Object;
    MethodParameters:
         Name  Flags
      carrier  
      layout   

  private  read(java.lang.Class<?>, jdk.incubator.foreign.MemoryLayout, jdk.internal.foreign.abi.SharedUtils$Allocator);
    descriptor: (Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;Ljdk/internal/foreign/abi/SharedUtils$Allocator;)Ljava/lang/Object;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=15, args_size=4
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // java.lang.Class carrier
        start local 2 // jdk.incubator.foreign.MemoryLayout layout
        start local 3 // jdk.internal.foreign.abi.SharedUtils$Allocator allocator
         0: .line 252
            aload 2 /* layout */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 253
            aload 1 /* carrier */
            aload 2 /* layout */
            ldc 64
            invokestatic jdk.internal.foreign.abi.SharedUtils.checkCompatibleType:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;J)V
         2: .line 255
            aload 2 /* layout */
            invokestatic jdk.internal.foreign.abi.aarch64.TypeClass.classifyLayout:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/internal/foreign/abi/aarch64/TypeClass;
            astore 4 /* typeClass */
        start local 4 // jdk.internal.foreign.abi.aarch64.TypeClass typeClass
         3: .line 256
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentGPOffset:()J
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentFPOffset:()J
            aload 4 /* typeClass */
            aload 2 /* layout */
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.isRegOverflow:(JJLjdk/internal/foreign/abi/aarch64/TypeClass;Ljdk/incubator/foreign/MemoryLayout;)Z
            ifeq 42
         4: .line 257
            aload 0 /* this */
            aload 2 /* layout */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.preAlignStack:(Ljdk/incubator/foreign/MemoryLayout;)V
         5: .line 258
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$SWITCH_TABLE$jdk$internal$foreign$abi$aarch64$TypeClass:()[I
            aload 4 /* typeClass */
            invokevirtual jdk.internal.foreign.abi.aarch64.TypeClass.ordinal:()I
            iaload
            tableswitch { // 1 - 6
                    1: 6
                    2: 6
                    3: 6
                    4: 23
                    5: 23
                    6: 23
              default: 40
          }
         6: .line 260
      StackMap locals: jdk.internal.foreign.abi.aarch64.TypeClass
      StackMap stack:
            aconst_null
            astore 6
            aconst_null
            astore 7
         7: aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.stackPtr:()Ljdk/incubator/foreign/MemoryAddress;
         8: .line 261
            aload 2 /* layout */
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            invokeinterface jdk.incubator.foreign.MemoryAddress.asSegmentRestricted:(J)Ljdk/incubator/foreign/MemorySegment;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
         9: .line 260
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.handoffIfNeeded:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
            astore 8 /* slice */
        start local 8 // jdk.incubator.foreign.MemorySegment slice
        10: .line 262
            aload 3 /* allocator */
            aload 2 /* layout */
            invokeinterface jdk.internal.foreign.abi.SharedUtils$Allocator.allocate:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/MemorySegment;
            astore 9 /* seg */
        start local 9 // jdk.incubator.foreign.MemorySegment seg
        11: .line 263
            aload 9 /* seg */
            aload 8 /* slice */
            invokeinterface jdk.incubator.foreign.MemorySegment.copyFrom:(Ljdk/incubator/foreign/MemorySegment;)V
        12: .line 264
            aload 0 /* this */
            aload 2 /* layout */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.postAlignStack:(Ljdk/incubator/foreign/MemoryLayout;)V
        13: .line 265
            aload 9 /* seg */
            astore 5 /*  secretYieldValue */
        start local 5 // java.lang.Object  secretYieldValue
        14: .line 266
            aload 8 /* slice */
            ifnull 15
            aload 8 /* slice */
            invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
        15: .line 265
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass java.lang.Object java.lang.Throwable java.lang.Throwable jdk.incubator.foreign.MemorySegment jdk.incubator.foreign.MemorySegment
      StackMap stack:
            aload 5 /*  secretYieldValue */
        end local 5 // java.lang.Object  secretYieldValue
        16: goto 41
        end local 9 // jdk.incubator.foreign.MemorySegment seg
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass top java.lang.Throwable java.lang.Throwable jdk.incubator.foreign.MemorySegment
      StackMap stack: java.lang.Throwable
        17: astore 6
        18: .line 266
            aload 8 /* slice */
            ifnull 19
            aload 8 /* slice */
            invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
        end local 8 // jdk.incubator.foreign.MemorySegment slice
      StackMap locals:
      StackMap stack:
        19: aload 6
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        20: astore 7
            aload 6
            ifnonnull 21
            aload 7
            astore 6
            goto 22
      StackMap locals:
      StackMap stack:
        21: aload 6
            aload 7
            if_acmpeq 22
            aload 6
            aload 7
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        22: aload 6
            athrow
        23: .line 269
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass
      StackMap stack:
            aload 1 /* carrier */
            aload 2 /* layout */
            invokestatic jdk.internal.foreign.abi.SharedUtils.vhPrimitiveOrAddress:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/invoke/VarHandle;
            astore 6 /* reader */
        start local 6 // java.lang.invoke.VarHandle reader
        24: .line 270
            aconst_null
            astore 7
            aconst_null
            astore 8
        25: aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.stackPtr:()Ljdk/incubator/foreign/MemoryAddress;
        26: .line 271
            aload 2 /* layout */
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            invokeinterface jdk.incubator.foreign.MemoryAddress.asSegmentRestricted:(J)Ljdk/incubator/foreign/MemorySegment;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
        27: .line 270
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.handoffIfNeeded:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
            astore 9 /* slice */
        start local 9 // jdk.incubator.foreign.MemorySegment slice
        28: .line 272
            aload 6 /* reader */
            aload 9 /* slice */
            invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)Ljava/lang/Object;
            astore 10 /* res */
        start local 10 // java.lang.Object res
        29: .line 273
            aload 0 /* this */
            aload 2 /* layout */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.postAlignStack:(Ljdk/incubator/foreign/MemoryLayout;)V
        30: .line 274
            aload 10 /* res */
            astore 5 /*  secretYieldValue */
        start local 5 // java.lang.Object  secretYieldValue
        31: .line 275
            aload 9 /* slice */
            ifnull 32
            aload 9 /* slice */
            invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
        32: .line 274
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass java.lang.Object java.lang.invoke.VarHandle java.lang.Throwable java.lang.Throwable jdk.incubator.foreign.MemorySegment java.lang.Object
      StackMap stack:
            aload 5 /*  secretYieldValue */
        end local 5 // java.lang.Object  secretYieldValue
        33: goto 41
        end local 10 // java.lang.Object res
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass top java.lang.invoke.VarHandle java.lang.Throwable java.lang.Throwable jdk.incubator.foreign.MemorySegment
      StackMap stack: java.lang.Throwable
        34: astore 7
        35: .line 275
            aload 9 /* slice */
            ifnull 36
            aload 9 /* slice */
            invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
        end local 9 // jdk.incubator.foreign.MemorySegment slice
      StackMap locals:
      StackMap stack:
        36: aload 7
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        37: astore 8
            aload 7
            ifnonnull 38
            aload 8
            astore 7
            goto 39
      StackMap locals:
      StackMap stack:
        38: aload 7
            aload 8
            if_acmpeq 39
            aload 7
            aload 8
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        39: aload 7
            athrow
        end local 6 // java.lang.invoke.VarHandle reader
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass
      StackMap stack:
        40: new java.lang.IncompatibleClassChangeError
            dup
            invokespecial java.lang.IncompatibleClassChangeError.<init>:()V
            athrow
        41: .line 258
      StackMap locals:
      StackMap stack: java.lang.Object
            areturn
        42: .line 279
      StackMap locals:
      StackMap stack:
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$SWITCH_TABLE$jdk$internal$foreign$abi$aarch64$TypeClass:()[I
            aload 4 /* typeClass */
            invokevirtual jdk.internal.foreign.abi.aarch64.TypeClass.ordinal:()I
            iaload
            tableswitch { // 1 - 6
                    1: 43
                    2: 70
                    3: 55
                    4: 92
                    5: 92
                    6: 98
              default: 104
          }
        43: .line 282
      StackMap locals:
      StackMap stack:
            aload 3 /* allocator */
            aload 2 /* layout */
            invokeinterface jdk.internal.foreign.abi.SharedUtils$Allocator.allocate:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/MemorySegment;
            astore 6 /* value */
        start local 6 // jdk.incubator.foreign.MemorySegment value
        44: .line 283
            lconst_0
            lstore 7 /* offset */
        start local 7 // long offset
        45: .line 284
            goto 51
        46: .line 285
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass top jdk.incubator.foreign.MemorySegment long
      StackMap stack:
            aload 2 /* layout */
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            lload 7 /* offset */
            lsub
            ldc 8
            invokestatic java.lang.Math.min:(JJ)J
            lstore 9 /* copy */
        start local 9 // long copy
        47: .line 286
            aload 6 /* value */
            lload 7 /* offset */
            lload 9 /* copy */
            invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(JJ)Ljdk/incubator/foreign/MemorySegment;
            astore 11 /* slice */
        start local 11 // jdk.incubator.foreign.MemorySegment slice
        48: .line 287
            aload 11 /* slice */
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentGPOffset:()J
            lload 9 /* copy */
            invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(JJ)Ljdk/incubator/foreign/MemorySegment;
            invokeinterface jdk.incubator.foreign.MemorySegment.copyFrom:(Ljdk/incubator/foreign/MemorySegment;)V
        49: .line 288
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeGPSlots:(I)V
        50: .line 289
            lload 7 /* offset */
            lload 9 /* copy */
            ladd
            lstore 7 /* offset */
        end local 11 // jdk.incubator.foreign.MemorySegment slice
        end local 9 // long copy
        51: .line 284
      StackMap locals:
      StackMap stack:
            lload 7 /* offset */
            aload 2 /* layout */
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            lcmp
            iflt 46
        52: .line 291
            aload 6 /* value */
            astore 5 /*  secretYieldValue */
        start local 5 // java.lang.Object  secretYieldValue
        53: aload 5 /*  secretYieldValue */
        end local 5 // java.lang.Object  secretYieldValue
        54: goto 105
        end local 7 // long offset
        end local 6 // jdk.incubator.foreign.MemorySegment value
        55: .line 296
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass
      StackMap stack:
            aload 3 /* allocator */
            aload 2 /* layout */
            invokeinterface jdk.internal.foreign.abi.SharedUtils$Allocator.allocate:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/MemorySegment;
            astore 6 /* value */
        start local 6 // jdk.incubator.foreign.MemorySegment value
        56: .line 297
            aload 2 /* layout */
            checkcast jdk.incubator.foreign.GroupLayout
            astore 7 /* group */
        start local 7 // jdk.incubator.foreign.GroupLayout group
        57: .line 298
            lconst_0
            lstore 8 /* offset */
        start local 8 // long offset
        58: .line 299
            aload 7 /* group */
            invokevirtual jdk.incubator.foreign.GroupLayout.memberLayouts:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 66
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass top jdk.incubator.foreign.MemorySegment jdk.incubator.foreign.GroupLayout long top java.util.Iterator
      StackMap stack:
        59: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.incubator.foreign.MemoryLayout
            astore 10 /* elem */
        start local 10 // jdk.incubator.foreign.MemoryLayout elem
        60: .line 300
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$assertionsDisabled:Z
            ifne 61
            aload 10 /* elem */
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            ldc 8
            lcmp
            ifle 61
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        61: .line 301
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass top jdk.incubator.foreign.MemorySegment jdk.incubator.foreign.GroupLayout long jdk.incubator.foreign.MemoryLayout java.util.Iterator
      StackMap stack:
            aload 10 /* elem */
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            lstore 12 /* copy */
        start local 12 // long copy
        62: .line 302
            aload 6 /* value */
            lload 8 /* offset */
            lload 12 /* copy */
            invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(JJ)Ljdk/incubator/foreign/MemorySegment;
            astore 14 /* slice */
        start local 14 // jdk.incubator.foreign.MemorySegment slice
        63: .line 303
            aload 14 /* slice */
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.fpRegsArea:Ljdk/incubator/foreign/MemorySegment;
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentFPOffset:()J
            lload 12 /* copy */
            invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(JJ)Ljdk/incubator/foreign/MemorySegment;
            invokeinterface jdk.incubator.foreign.MemorySegment.copyFrom:(Ljdk/incubator/foreign/MemorySegment;)V
        64: .line 304
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeFPSlots:(I)V
        65: .line 305
            lload 8 /* offset */
            lload 12 /* copy */
            ladd
            lstore 8 /* offset */
        end local 14 // jdk.incubator.foreign.MemorySegment slice
        end local 12 // long copy
        end local 10 // jdk.incubator.foreign.MemoryLayout elem
        66: .line 299
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass top jdk.incubator.foreign.MemorySegment jdk.incubator.foreign.GroupLayout long top java.util.Iterator
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 59
        67: .line 307
            aload 6 /* value */
            astore 5 /*  secretYieldValue */
        start local 5 // java.lang.Object  secretYieldValue
        68: aload 5 /*  secretYieldValue */
        end local 5 // java.lang.Object  secretYieldValue
        69: goto 105
        end local 8 // long offset
        end local 7 // jdk.incubator.foreign.GroupLayout group
        end local 6 // jdk.incubator.foreign.MemorySegment value
        70: .line 312
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass
      StackMap stack:
            ldc Ljdk/incubator/foreign/MemoryAddress;
            getstatic jdk.internal.foreign.PlatformLayouts$AArch64.C_POINTER:Ljdk/incubator/foreign/ValueLayout;
            invokestatic jdk.internal.foreign.abi.SharedUtils.vhPrimitiveOrAddress:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/invoke/VarHandle;
        71: .line 311
            astore 6 /* ptrReader */
        start local 6 // java.lang.invoke.VarHandle ptrReader
        72: .line 313
            aload 6 /* ptrReader */
        73: .line 314
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentGPOffset:()J
            invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(J)Ljdk/incubator/foreign/MemorySegment;
        74: .line 313
            invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
            astore 7 /* ptr */
        start local 7 // jdk.incubator.foreign.MemoryAddress ptr
        75: .line 315
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeGPSlots:(I)V
        76: .line 317
            aconst_null
            astore 8
            aconst_null
            astore 9
        77: aload 7 /* ptr */
        78: .line 318
            aload 2 /* layout */
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            invokeinterface jdk.incubator.foreign.MemoryAddress.asSegmentRestricted:(J)Ljdk/incubator/foreign/MemorySegment;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
        79: .line 317
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.handoffIfNeeded:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
            astore 10 /* slice */
        start local 10 // jdk.incubator.foreign.MemorySegment slice
        80: .line 319
            aload 3 /* allocator */
            aload 2 /* layout */
            invokeinterface jdk.internal.foreign.abi.SharedUtils$Allocator.allocate:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/MemorySegment;
            astore 11 /* seg */
        start local 11 // jdk.incubator.foreign.MemorySegment seg
        81: .line 320
            aload 11 /* seg */
            aload 10 /* slice */
            invokeinterface jdk.incubator.foreign.MemorySegment.copyFrom:(Ljdk/incubator/foreign/MemorySegment;)V
        82: .line 321
            aload 11 /* seg */
            astore 5 /*  secretYieldValue */
        start local 5 // java.lang.Object  secretYieldValue
        83: .line 322
            aload 10 /* slice */
            ifnull 84
            aload 10 /* slice */
            invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
        84: .line 321
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass java.lang.Object java.lang.invoke.VarHandle jdk.incubator.foreign.MemoryAddress java.lang.Throwable java.lang.Throwable jdk.incubator.foreign.MemorySegment jdk.incubator.foreign.MemorySegment
      StackMap stack:
            aload 5 /*  secretYieldValue */
        end local 5 // java.lang.Object  secretYieldValue
        85: goto 105
        end local 11 // jdk.incubator.foreign.MemorySegment seg
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass top java.lang.invoke.VarHandle jdk.incubator.foreign.MemoryAddress java.lang.Throwable java.lang.Throwable jdk.incubator.foreign.MemorySegment
      StackMap stack: java.lang.Throwable
        86: astore 8
        87: .line 322
            aload 10 /* slice */
            ifnull 88
            aload 10 /* slice */
            invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
        end local 10 // jdk.incubator.foreign.MemorySegment slice
      StackMap locals:
      StackMap stack:
        88: aload 8
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        89: astore 9
            aload 8
            ifnonnull 90
            aload 9
            astore 8
            goto 91
      StackMap locals:
      StackMap stack:
        90: aload 8
            aload 9
            if_acmpeq 91
            aload 8
            aload 9
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        91: aload 8
            athrow
        end local 7 // jdk.incubator.foreign.MemoryAddress ptr
        end local 6 // java.lang.invoke.VarHandle ptrReader
        92: .line 325
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList java.lang.Class jdk.incubator.foreign.MemoryLayout jdk.internal.foreign.abi.SharedUtils$Allocator jdk.internal.foreign.abi.aarch64.TypeClass
      StackMap stack:
            aload 1 /* carrier */
            aload 2 /* layout */
            invokestatic jdk.internal.foreign.abi.SharedUtils.vhPrimitiveOrAddress:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/invoke/VarHandle;
            astore 6 /* reader */
        start local 6 // java.lang.invoke.VarHandle reader
        93: .line 326
            aload 6 /* reader */
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentGPOffset:()J
            invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(J)Ljdk/incubator/foreign/MemorySegment;
            invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)Ljava/lang/Object;
            astore 7 /* res */
        start local 7 // java.lang.Object res
        94: .line 327
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeGPSlots:(I)V
        95: .line 328
            aload 7 /* res */
            astore 5 /*  secretYieldValue */
        start local 5 // java.lang.Object  secretYieldValue
        96: aload 5 /*  secretYieldValue */
        end local 5 // java.lang.Object  secretYieldValue
        97: goto 105
        end local 7 // java.lang.Object res
        end local 6 // java.lang.invoke.VarHandle reader
        98: .line 331
      StackMap locals:
      StackMap stack:
            aload 2 /* layout */
            aload 1 /* carrier */
            iconst_0
            anewarray jdk.incubator.foreign.MemoryLayout$PathElement
            invokeinterface jdk.incubator.foreign.MemoryLayout.varHandle:(Ljava/lang/Class;[Ljdk/incubator/foreign/MemoryLayout$PathElement;)Ljava/lang/invoke/VarHandle;
            astore 6 /* reader */
        start local 6 // java.lang.invoke.VarHandle reader
        99: .line 332
            aload 6 /* reader */
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.fpRegsArea:Ljdk/incubator/foreign/MemorySegment;
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentFPOffset:()J
            invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(J)Ljdk/incubator/foreign/MemorySegment;
            invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)Ljava/lang/Object;
            astore 7 /* res */
        start local 7 // java.lang.Object res
       100: .line 333
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeFPSlots:(I)V
       101: .line 334
            aload 7 /* res */
            astore 5 /*  secretYieldValue */
        start local 5 // java.lang.Object  secretYieldValue
       102: aload 5 /*  secretYieldValue */
        end local 5 // java.lang.Object  secretYieldValue
       103: goto 105
        end local 7 // java.lang.Object res
        end local 6 // java.lang.invoke.VarHandle reader
      StackMap locals:
      StackMap stack:
       104: new java.lang.IncompatibleClassChangeError
            dup
            invokespecial java.lang.IncompatibleClassChangeError.<init>:()V
            athrow
       105: .line 279
      StackMap locals:
      StackMap stack: java.lang.Object
            areturn
        end local 4 // jdk.internal.foreign.abi.aarch64.TypeClass typeClass
        end local 3 // jdk.internal.foreign.abi.SharedUtils$Allocator allocator
        end local 2 // jdk.incubator.foreign.MemoryLayout layout
        end local 1 // java.lang.Class carrier
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0  106     0               this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0  106     1            carrier  Ljava/lang/Class<*>;
            0  106     2             layout  Ljdk/incubator/foreign/MemoryLayout;
            0  106     3          allocator  Ljdk/internal/foreign/abi/SharedUtils$Allocator;
            3  106     4          typeClass  Ljdk/internal/foreign/abi/aarch64/TypeClass;
           10   19     8              slice  Ljdk/incubator/foreign/MemorySegment;
           11   17     9                seg  Ljdk/incubator/foreign/MemorySegment;
           24   40     6             reader  Ljava/lang/invoke/VarHandle;
           28   36     9              slice  Ljdk/incubator/foreign/MemorySegment;
           29   34    10                res  Ljava/lang/Object;
           44   55     6              value  Ljdk/incubator/foreign/MemorySegment;
           45   55     7             offset  J
           47   51     9               copy  J
           48   51    11              slice  Ljdk/incubator/foreign/MemorySegment;
           56   70     6              value  Ljdk/incubator/foreign/MemorySegment;
           57   70     7              group  Ljdk/incubator/foreign/GroupLayout;
           58   70     8             offset  J
           60   66    10               elem  Ljdk/incubator/foreign/MemoryLayout;
           62   66    12               copy  J
           63   66    14              slice  Ljdk/incubator/foreign/MemorySegment;
           72   92     6          ptrReader  Ljava/lang/invoke/VarHandle;
           75   92     7                ptr  Ljdk/incubator/foreign/MemoryAddress;
           80   88    10              slice  Ljdk/incubator/foreign/MemorySegment;
           81   86    11                seg  Ljdk/incubator/foreign/MemorySegment;
           93   98     6             reader  Ljava/lang/invoke/VarHandle;
           94   98     7                res  Ljava/lang/Object;
           99  104     6             reader  Ljava/lang/invoke/VarHandle;
          100  104     7                res  Ljava/lang/Object;
           14   16     5   secretYieldValue  Ljava/lang/Object;
           31   33     5   secretYieldValue  Ljava/lang/Object;
           53   54     5   secretYieldValue  Ljava/lang/Object;
           68   69     5   secretYieldValue  Ljava/lang/Object;
           83   85     5   secretYieldValue  Ljava/lang/Object;
           96   97     5   secretYieldValue  Ljava/lang/Object;
          102  103     5   secretYieldValue  Ljava/lang/Object;
      Exception table:
        from    to  target  type
          10    14      17  any
           7    15      20  any
          17    20      20  any
          28    31      34  any
          25    32      37  any
          34    37      37  any
          80    83      86  any
          77    84      89  any
          86    89      89  any
    Signature: (Ljava/lang/Class<*>;Ljdk/incubator/foreign/MemoryLayout;Ljdk/internal/foreign/abi/SharedUtils$Allocator;)Ljava/lang/Object;
    MethodParameters:
           Name  Flags
      carrier    
      layout     
      allocator  

  public void skip(jdk.incubator.foreign.MemoryLayout[]);
    descriptor: ([Ljdk/incubator/foreign/MemoryLayout;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.MemoryLayout[] layouts
         0: .line 342
            aload 1 /* layouts */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 343
            aload 1 /* layouts */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 17
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList jdk.incubator.foreign.MemoryLayout[] top int int jdk.incubator.foreign.MemoryLayout[]
      StackMap stack:
         2: aload 5
            iload 3
            aaload
            astore 2 /* layout */
        start local 2 // jdk.incubator.foreign.MemoryLayout layout
         3: .line 344
            aload 2 /* layout */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 345
            aload 2 /* layout */
            invokestatic jdk.internal.foreign.abi.aarch64.TypeClass.classifyLayout:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/internal/foreign/abi/aarch64/TypeClass;
            astore 6 /* typeClass */
        start local 6 // jdk.internal.foreign.abi.aarch64.TypeClass typeClass
         5: .line 346
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentGPOffset:()J
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentFPOffset:()J
            aload 6 /* typeClass */
            aload 2 /* layout */
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.isRegOverflow:(JJLjdk/internal/foreign/abi/aarch64/TypeClass;Ljdk/incubator/foreign/MemoryLayout;)Z
            ifeq 9
         6: .line 347
            aload 0 /* this */
            aload 2 /* layout */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.preAlignStack:(Ljdk/incubator/foreign/MemoryLayout;)V
         7: .line 348
            aload 0 /* this */
            aload 2 /* layout */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.postAlignStack:(Ljdk/incubator/foreign/MemoryLayout;)V
         8: .line 349
            goto 16
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList jdk.incubator.foreign.MemoryLayout[] jdk.incubator.foreign.MemoryLayout int int jdk.incubator.foreign.MemoryLayout[] jdk.internal.foreign.abi.aarch64.TypeClass
      StackMap stack:
         9: aload 6 /* typeClass */
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.FLOAT:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            if_acmpeq 10
            aload 6 /* typeClass */
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.STRUCT_HFA:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            if_acmpne 12
        10: .line 350
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* layout */
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.numSlots:(Ljdk/incubator/foreign/MemoryLayout;)I
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeFPSlots:(I)V
        11: .line 351
            goto 16
      StackMap locals:
      StackMap stack:
        12: aload 6 /* typeClass */
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.STRUCT_REFERENCE:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            if_acmpne 15
        13: .line 352
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeGPSlots:(I)V
        14: .line 353
            goto 16
        15: .line 354
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* layout */
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.numSlots:(Ljdk/incubator/foreign/MemoryLayout;)I
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeGPSlots:(I)V
        end local 6 // jdk.internal.foreign.abi.aarch64.TypeClass typeClass
        end local 2 // jdk.incubator.foreign.MemoryLayout layout
        16: .line 343
      StackMap locals: jdk.internal.foreign.abi.aarch64.AArch64VaList jdk.incubator.foreign.MemoryLayout[] top int int jdk.incubator.foreign.MemoryLayout[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
        17: iload 3
            iload 4
            if_icmplt 2
        18: .line 357
            return
        end local 1 // jdk.incubator.foreign.MemoryLayout[] layouts
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   19     0       this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0   19     1    layouts  [Ljdk/incubator/foreign/MemoryLayout;
            3   16     2     layout  Ljdk/incubator/foreign/MemoryLayout;
            5   16     6  typeClass  Ljdk/internal/foreign/abi/aarch64/TypeClass;
    MethodParameters:
         Name  Flags
      layouts  

  static jdk.internal.foreign.abi.aarch64.AArch64VaList$Builder builder(jdk.internal.foreign.abi.SharedUtils$Allocator);
    descriptor: (Ljdk/internal/foreign/abi/SharedUtils$Allocator;)Ljdk/internal/foreign/abi/aarch64/AArch64VaList$Builder;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.abi.SharedUtils$Allocator allocator
         0: .line 360
            new jdk.internal.foreign.abi.aarch64.AArch64VaList$Builder
            dup
            aload 0 /* allocator */
            invokespecial jdk.internal.foreign.abi.aarch64.AArch64VaList$Builder.<init>:(Ljdk/internal/foreign/abi/SharedUtils$Allocator;)V
            areturn
        end local 0 // jdk.internal.foreign.abi.SharedUtils$Allocator allocator
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  allocator  Ljdk/internal/foreign/abi/SharedUtils$Allocator;
    MethodParameters:
           Name  Flags
      allocator  

  public static jdk.incubator.foreign.CLinker$VaList ofAddress(jdk.incubator.foreign.MemoryAddress);
    descriptor: (Ljdk/incubator/foreign/MemoryAddress;)Ljdk/incubator/foreign/CLinker$VaList;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.incubator.foreign.MemoryAddress ma
         0: .line 364
            aload 0 /* ma */
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
            invokevirtual jdk.incubator.foreign.GroupLayout.byteSize:()J
            invokeinterface jdk.incubator.foreign.MemoryAddress.asSegmentRestricted:(J)Ljdk/incubator/foreign/MemorySegment;
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.readFromSegment:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            areturn
        end local 0 // jdk.incubator.foreign.MemoryAddress ma
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0    ma  Ljdk/incubator/foreign/MemoryAddress;
    MethodParameters:
      Name  Flags
      ma    

  public boolean isAlive();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 369
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokeinterface jdk.incubator.foreign.MemorySegment.isAlive:()Z
            ireturn
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 374
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
         1: .line 375
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.attachedSegments:Ljava/util/List;
            invokedynamic accept()Ljava/util/function/Consumer;
              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;)V
                  jdk/incubator/foreign/MemorySegment.close()V (9 itf)
                  (Ljdk/incubator/foreign/MemorySegment;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
         2: .line 376
            return
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;

  public jdk.incubator.foreign.CLinker$VaList copy();
    descriptor: ()Ljdk/incubator/foreign/CLinker$VaList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 380
            aload 0 /* this */
            invokedynamic allocate()Ljdk/internal/foreign/abi/SharedUtils$Allocator;
              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:
                  (JJ)Ljdk/incubator/foreign/MemorySegment;
                  jdk/incubator/foreign/MemorySegment.allocateNative(JJ)Ljdk/incubator/foreign/MemorySegment; (6 itf)
                  (JJ)Ljdk/incubator/foreign/MemorySegment;
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.copy:(Ljdk/internal/foreign/abi/SharedUtils$Allocator;)Ljdk/incubator/foreign/CLinker$VaList;
            areturn
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;

  public jdk.incubator.foreign.CLinker$VaList copy(jdk.incubator.foreign.NativeScope);
    descriptor: (Ljdk/incubator/foreign/NativeScope;)Ljdk/incubator/foreign/CLinker$VaList;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.incubator.foreign.NativeScope scope
         0: .line 385
            aload 1 /* scope */
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 386
            aload 0 /* this */
            aload 1 /* scope */
            invokestatic jdk.internal.foreign.abi.SharedUtils$Allocator.ofScope:(Ljdk/incubator/foreign/NativeScope;)Ljdk/internal/foreign/abi/SharedUtils$Allocator;
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.copy:(Ljdk/internal/foreign/abi/SharedUtils$Allocator;)Ljdk/incubator/foreign/CLinker$VaList;
            areturn
        end local 1 // jdk.incubator.foreign.NativeScope scope
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    2     1  scope  Ljdk/incubator/foreign/NativeScope;
    MethodParameters:
       Name  Flags
      scope  

  private jdk.incubator.foreign.CLinker$VaList copy(jdk.internal.foreign.abi.SharedUtils$Allocator);
    descriptor: (Ljdk/internal/foreign/abi/SharedUtils$Allocator;)Ljdk/incubator/foreign/CLinker$VaList;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
        start local 1 // jdk.internal.foreign.abi.SharedUtils$Allocator allocator
         0: .line 390
            aload 1 /* allocator */
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
            invokeinterface jdk.internal.foreign.abi.SharedUtils$Allocator.allocate:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/MemorySegment;
            astore 2 /* copy */
        start local 2 // jdk.incubator.foreign.MemorySegment copy
         1: .line 391
            aload 2 /* copy */
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokeinterface jdk.incubator.foreign.MemorySegment.copyFrom:(Ljdk/incubator/foreign/MemorySegment;)V
         2: .line 392
            new jdk.internal.foreign.abi.aarch64.AArch64VaList
            dup
            aload 2 /* copy */
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.fpRegsArea:Ljdk/incubator/foreign/MemorySegment;
            invokestatic java.util.List.of:()Ljava/util/List;
            invokespecial jdk.internal.foreign.abi.aarch64.AArch64VaList.<init>:(Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemorySegment;Ljava/util/List;)V
            areturn
        end local 2 // jdk.incubator.foreign.MemorySegment copy
        end local 1 // jdk.internal.foreign.abi.SharedUtils$Allocator allocator
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
            0    3     1  allocator  Ljdk/internal/foreign/abi/SharedUtils$Allocator;
            1    3     2       copy  Ljdk/incubator/foreign/MemorySegment;
    MethodParameters:
           Name  Flags
      allocator  

  public jdk.incubator.foreign.MemoryAddress address();
    descriptor: ()Ljdk/incubator/foreign/MemoryAddress;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 397
            aload 0 /* this */
            getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
            invokeinterface jdk.incubator.foreign.MemorySegment.address:()Ljdk/incubator/foreign/MemoryAddress;
            areturn
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;

  private static int numSlots(jdk.incubator.foreign.MemoryLayout);
    descriptor: (Ljdk/incubator/foreign/MemoryLayout;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // jdk.incubator.foreign.MemoryLayout layout
         0: .line 401
            aload 0 /* layout */
            invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
            ldc 8
            invokestatic jdk.internal.foreign.Utils.alignUp:(JJ)J
            l2i
            bipush 8
            idiv
            ireturn
        end local 0 // jdk.incubator.foreign.MemoryLayout layout
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0  layout  Ljdk/incubator/foreign/MemoryLayout;
    MethodParameters:
        Name  Flags
      layout  

  private static boolean isRegOverflow(long, long, jdk.internal.foreign.abi.aarch64.TypeClass, jdk.incubator.foreign.MemoryLayout);
    descriptor: (JJLjdk/internal/foreign/abi/aarch64/TypeClass;Ljdk/incubator/foreign/MemoryLayout;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // long currentGPOffset
        start local 2 // long currentFPOffset
        start local 4 // jdk.internal.foreign.abi.aarch64.TypeClass typeClass
        start local 5 // jdk.incubator.foreign.MemoryLayout layout
         0: .line 406
            aload 4 /* typeClass */
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.FLOAT:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            if_acmpeq 1
            aload 4 /* typeClass */
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.STRUCT_HFA:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            if_acmpne 3
         1: .line 407
      StackMap locals:
      StackMap stack:
            lload 2 /* currentFPOffset */
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.MAX_FP_OFFSET:I
            aload 5 /* layout */
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.numSlots:(Ljdk/incubator/foreign/MemoryLayout;)I
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.FP_SLOT_SIZE:I
            imul
            isub
            i2l
            lcmp
            ifle 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 408
      StackMap locals:
      StackMap stack:
            aload 4 /* typeClass */
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.STRUCT_REFERENCE:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            if_acmpne 6
         4: .line 409
            lload 0 /* currentGPOffset */
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.MAX_GP_OFFSET:I
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.GP_SLOT_SIZE:I
            isub
            i2l
            lcmp
            ifle 5
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         5: iconst_0
            ireturn
         6: .line 411
      StackMap locals:
      StackMap stack:
            lload 0 /* currentGPOffset */
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.MAX_GP_OFFSET:I
            aload 5 /* layout */
            invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.numSlots:(Ljdk/incubator/foreign/MemoryLayout;)I
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.GP_SLOT_SIZE:I
            imul
            isub
            i2l
            lcmp
            ifle 7
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         7: iconst_0
            ireturn
        end local 5 // jdk.incubator.foreign.MemoryLayout layout
        end local 4 // jdk.internal.foreign.abi.aarch64.TypeClass typeClass
        end local 2 // long currentFPOffset
        end local 0 // long currentGPOffset
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0  currentGPOffset  J
            0    8     2  currentFPOffset  J
            0    8     4        typeClass  Ljdk/internal/foreign/abi/aarch64/TypeClass;
            0    8     5           layout  Ljdk/incubator/foreign/MemoryLayout;
    MethodParameters:
                 Name  Flags
      currentGPOffset  
      currentFPOffset  
      typeClass        
      layout           

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
         0: .line 417
            new java.lang.StringBuilder
            dup
            ldc "AArch64VaList{__stack="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         1: .line 418
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.stackPtr:()Ljdk/incubator/foreign/MemoryAddress;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         2: .line 419
            ldc ", __gr_top="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.grTop:()Ljdk/incubator/foreign/MemoryAddress;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         3: .line 420
            ldc ", __vr_top="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.vrTop:()Ljdk/incubator/foreign/MemoryAddress;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         4: .line 421
            ldc ", __gr_offs="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.grOffs:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         5: .line 422
            ldc ", __vr_offs="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.vrOffs:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
         6: .line 423
            bipush 125
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
         7: .line 417
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // jdk.internal.foreign.abi.aarch64.AArch64VaList this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljdk/internal/foreign/abi/aarch64/AArch64VaList;

  private static jdk.incubator.foreign.MemorySegment handoffIfNeeded(jdk.incubator.foreign.MemorySegment, java.lang.Thread);
    descriptor: (Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.incubator.foreign.MemorySegment segment
        start local 1 // java.lang.Thread thread
         0: .line 570
            aload 0 /* segment */
            invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
            aload 1 /* thread */
            if_acmpne 2
         1: .line 571
            aload 0 /* segment */
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 0 /* segment */
            aload 1 /* thread */
            invokeinterface jdk.incubator.foreign.MemorySegment.handoff:(Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
         3: .line 570
      StackMap locals:
      StackMap stack: jdk.incubator.foreign.MemorySegment
            areturn
        end local 1 // java.lang.Thread thread
        end local 0 // jdk.incubator.foreign.MemorySegment segment
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0  segment  Ljdk/incubator/foreign/MemorySegment;
            0    4     1   thread  Ljava/lang/Thread;
    MethodParameters:
         Name  Flags
      segment  
      thread   

  static int[] $SWITCH_TABLE$jdk$internal$foreign$abi$aarch64$TypeClass();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 49
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$SWITCH_TABLE$jdk$internal$foreign$abi$aarch64$TypeClass:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic jdk.internal.foreign.abi.aarch64.TypeClass.values:()[Ljdk/internal/foreign/abi/aarch64/TypeClass;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.FLOAT:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            invokevirtual jdk.internal.foreign.abi.aarch64.TypeClass.ordinal:()I
            bipush 6
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.INTEGER:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            invokevirtual jdk.internal.foreign.abi.aarch64.TypeClass.ordinal:()I
            iconst_5
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.POINTER:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            invokevirtual jdk.internal.foreign.abi.aarch64.TypeClass.ordinal:()I
            iconst_4
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.STRUCT_HFA:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            invokevirtual jdk.internal.foreign.abi.aarch64.TypeClass.ordinal:()I
            iconst_3
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.STRUCT_REFERENCE:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            invokevirtual jdk.internal.foreign.abi.aarch64.TypeClass.ordinal:()I
            iconst_2
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic jdk.internal.foreign.abi.aarch64.TypeClass.STRUCT_REGISTER:Ljdk/internal/foreign/abi/aarch64/TypeClass;
            invokevirtual jdk.internal.foreign.abi.aarch64.TypeClass.ordinal:()I
            iconst_1
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            dup
            putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$SWITCH_TABLE$jdk$internal$foreign$abi$aarch64$TypeClass:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError

  private static void lambda$0(long);
    descriptor: (J)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=1
         0: .line 129
            getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.U:Ljdk/internal/misc/Unsafe;
            lload 0
            invokevirtual jdk.internal.misc.Unsafe.freeMemory:(J)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "AArch64VaList.java"
NestMembers:
  jdk.internal.foreign.abi.aarch64.AArch64VaList$Builder
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Cleanable = java.lang.ref.Cleaner$Cleanable of java.lang.ref.Cleaner
  public abstract VaList = jdk.incubator.foreign.CLinker$VaList of jdk.incubator.foreign.CLinker
  public abstract PathElement = jdk.incubator.foreign.MemoryLayout$PathElement of jdk.incubator.foreign.MemoryLayout
  public final AArch64 = jdk.internal.foreign.PlatformLayouts$AArch64 of jdk.internal.foreign.PlatformLayouts
  public abstract Allocator = jdk.internal.foreign.abi.SharedUtils$Allocator of jdk.internal.foreign.abi.SharedUtils
  public EmptyVaList = jdk.internal.foreign.abi.SharedUtils$EmptyVaList of jdk.internal.foreign.abi.SharedUtils
  Builder = jdk.internal.foreign.abi.aarch64.AArch64VaList$Builder of jdk.internal.foreign.abi.aarch64.AArch64VaList