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: 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: invokestatic jdk.internal.misc.Unsafe.getUnsafe:()Ljdk/internal/misc/Unsafe;
putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.U:Ljdk/internal/misc/Unsafe;
4: ldc Ljdk/incubator/foreign/MemoryAddress;
putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.CARRIER:Ljava/lang/Class;
5: iconst_5
anewarray jdk.incubator.foreign.MemoryLayout
dup
iconst_0
6: 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: 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: 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: 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: 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: invokestatic jdk.incubator.foreign.MemoryLayout.ofStruct:([Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/GroupLayout;
12: ldc "__va_list"
invokevirtual jdk.incubator.foreign.GroupLayout.withName:(Ljava/lang/String;)Ljdk/incubator/foreign/GroupLayout;
13: putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
14: ldc 64
invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
invokestatic jdk.incubator.foreign.MemoryLayout.ofValueBits:(JLjava/nio/ByteOrder;)Ljdk/incubator/foreign/ValueLayout;
15: putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.GP_REG:Ljdk/incubator/foreign/MemoryLayout;
16: ldc 128
invokestatic java.nio.ByteOrder.nativeOrder:()Ljava/nio/ByteOrder;
invokestatic jdk.incubator.foreign.MemoryLayout.ofValueBits:(JLjava/nio/ByteOrder;)Ljdk/incubator/foreign/ValueLayout;
17: putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.FP_REG:Ljdk/incubator/foreign/MemoryLayout;
18: 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: putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT_GP_REGS:Ljdk/incubator/foreign/MemoryLayout;
20: 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: putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT_FP_REGS:Ljdk/incubator/foreign/MemoryLayout;
22: 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: 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: 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: 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: 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: putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_stack:Ljava/lang/invoke/VarHandle;
28: 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: putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_top:Ljava/lang/invoke/VarHandle;
30: 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: putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_top:Ljava/lang/invoke/VarHandle;
32: 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: putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_offs:Ljava/lang/invoke/VarHandle;
34: 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: putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_offs:Ljava/lang/invoke/VarHandle;
36: invokestatic java.lang.ref.Cleaner.create:()Ljava/lang/ref/Cleaner;
putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.cleaner:Ljava/lang/ref/Cleaner;
37: 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: putstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.EMPTY:Ljdk/incubator/foreign/CLinker$VaList;
39: 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 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
2: aload 0
aload 2
putfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
3: aload 0
aload 3
putfield jdk.internal.foreign.abi.aarch64.AArch64VaList.fpRegsArea:Ljdk/incubator/foreign/MemorySegment;
4: aload 0
aload 4
putfield jdk.internal.foreign.abi.aarch64.AArch64VaList.attachedSegments:Ljava/util/List;
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 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 0: aload 0
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: 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
invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
2: invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.handoffIfNeeded:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
astore 1
start local 1 3: aload 0
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: 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
invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
5: invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.handoffIfNeeded:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
astore 2
start local 2 6: new jdk.internal.foreign.abi.aarch64.AArch64VaList
dup
aload 0
aload 1
aload 2
aload 1
aload 2
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 end local 1 end local 0 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: 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
start local 0 1: lload 0
invokestatic jdk.incubator.foreign.MemoryAddress.ofLong:(J)Ljdk/incubator/foreign/MemoryAddress;
2: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.LAYOUT:Ljdk/incubator/foreign/GroupLayout;
invokevirtual jdk.incubator.foreign.GroupLayout.byteSize:()J
lload 0
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: invokeinterface jdk.incubator.foreign.MemorySegment.share:()Ljdk/incubator/foreign/MemorySegment;
4: astore 2
start local 2 5: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.cleaner:Ljava/lang/ref/Cleaner;
ldc Ljdk/internal/foreign/abi/aarch64/AArch64VaList;
aload 2
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: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_stack:Ljava/lang/invoke/VarHandle;
aload 2
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: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_top:Ljava/lang/invoke/VarHandle;
aload 2
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: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_top:Ljava/lang/invoke/VarHandle;
aload 2
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: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_offs:Ljava/lang/invoke/VarHandle;
aload 2
iconst_0
invokevirtual java.lang.invoke.VarHandle.set:(Ljdk/incubator/foreign/MemorySegment;I)V
10: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_offs:Ljava/lang/invoke/VarHandle;
aload 2
iconst_0
invokevirtual java.lang.invoke.VarHandle.set:(Ljdk/incubator/foreign/MemorySegment;I)V
11: aload 2
invokeinterface jdk.incubator.foreign.MemorySegment.address:()Ljdk/incubator/foreign/MemoryAddress;
areturn
end local 2 end local 0 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: 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 0: aload 0
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 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 0: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_top:Ljava/lang/invoke/VarHandle;
aload 0
invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
areturn
end local 0 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 0: aload 0
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 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 0: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_top:Ljava/lang/invoke/VarHandle;
aload 0
invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
areturn
end local 0 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 0: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_offs:Ljava/lang/invoke/VarHandle;
aload 0
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
start local 1 1: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$assertionsDisabled:Z
ifne 2
iload 1
ifle 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: int
StackMap stack:
iload 1
ireturn
end local 1 end local 0 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 0: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_offs:Ljava/lang/invoke/VarHandle;
aload 0
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
start local 1 1: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$assertionsDisabled:Z
ifne 2
iload 1
ifle 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: StackMap locals: int
StackMap stack:
iload 1
ireturn
end local 1 end local 0 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 0: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_stack:Ljava/lang/invoke/VarHandle;
aload 0
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 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 start local 1 0: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_stack:Ljava/lang/invoke/VarHandle;
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
aload 1
invokevirtual java.lang.invoke.VarHandle.set:(Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemoryAddress;)V
1: return
end local 1 end local 0 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 start local 1 0: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_offs:Ljava/lang/invoke/VarHandle;
aload 0
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
start local 2 1: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_gr_offs:Ljava/lang/invoke/VarHandle;
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
iload 2
iload 1
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: return
end local 2 end local 1 end local 0 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 start local 1 0: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_offs:Ljava/lang/invoke/VarHandle;
aload 0
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
start local 2 1: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.VH_vr_offs:Ljava/lang/invoke/VarHandle;
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
iload 2
iload 1
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: return
end local 2 end local 1 end local 0 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 0: aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
invokeinterface jdk.incubator.foreign.MemorySegment.byteSize:()J
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.grOffs:()I
i2l
ladd
lreturn
end local 0 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 0: aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.fpRegsArea:Ljdk/incubator/foreign/MemorySegment;
invokeinterface jdk.incubator.foreign.MemorySegment.byteSize:()J
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.vrOffs:()I
i2l
ladd
lreturn
end local 0 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 start local 1 0: aload 1
invokeinterface jdk.incubator.foreign.MemoryLayout.byteAlignment:()J
ldc 8
lcmp
ifle 2
1: aload 0
aload 0
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: StackMap locals:
StackMap stack:
return
end local 1 end local 0 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 start local 1 0: aload 0
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.stackPtr:()Ljdk/incubator/foreign/MemoryAddress;
aload 1
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: return
end local 1 end local 0 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 start local 1 0: aload 0
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
aload 1
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 end local 0 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 start local 1 0: aload 0
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
aload 1
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 end local 0 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 start local 1 0: aload 0
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
aload 1
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 end local 0 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 start local 1 0: aload 0
ldc Ljdk/incubator/foreign/MemoryAddress;
aload 1
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 end local 0 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 start local 1 0: aload 0
ldc Ljdk/incubator/foreign/MemorySegment;
aload 1
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 end local 0 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 start local 1 start local 2 0: aload 2
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 0
ldc Ljdk/incubator/foreign/MemorySegment;
aload 1
aload 2
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 end local 1 end local 0 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 start local 1 start local 2 0: aload 0
aload 1
aload 2
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 end local 1 end local 0 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 start local 1 start local 2 start local 3 0: aload 2
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 1
aload 2
ldc 64
invokestatic jdk.internal.foreign.abi.SharedUtils.checkCompatibleType:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;J)V
2: aload 2
invokestatic jdk.internal.foreign.abi.aarch64.TypeClass.classifyLayout:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/internal/foreign/abi/aarch64/TypeClass;
astore 4
start local 4 3: aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentGPOffset:()J
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentFPOffset:()J
aload 4
aload 2
invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.isRegOverflow:(JJLjdk/internal/foreign/abi/aarch64/TypeClass;Ljdk/incubator/foreign/MemoryLayout;)Z
ifeq 42
4: aload 0
aload 2
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.preAlignStack:(Ljdk/incubator/foreign/MemoryLayout;)V
5: invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$SWITCH_TABLE$jdk$internal$foreign$abi$aarch64$TypeClass:()[I
aload 4
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: StackMap locals: jdk.internal.foreign.abi.aarch64.TypeClass
StackMap stack:
aconst_null
astore 6
aconst_null
astore 7
7: aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.stackPtr:()Ljdk/incubator/foreign/MemoryAddress;
8: aload 2
invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
invokeinterface jdk.incubator.foreign.MemoryAddress.asSegmentRestricted:(J)Ljdk/incubator/foreign/MemorySegment;
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
9: invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.handoffIfNeeded:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
astore 8
start local 8 10: aload 3
aload 2
invokeinterface jdk.internal.foreign.abi.SharedUtils$Allocator.allocate:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/MemorySegment;
astore 9
start local 9 11: aload 9
aload 8
invokeinterface jdk.incubator.foreign.MemorySegment.copyFrom:(Ljdk/incubator/foreign/MemorySegment;)V
12: aload 0
aload 2
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.postAlignStack:(Ljdk/incubator/foreign/MemoryLayout;)V
13: aload 9
astore 5
start local 5 14: aload 8
ifnull 15
aload 8
invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
15: 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
end local 5 16: goto 41
end local 9 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: aload 8
ifnull 19
aload 8
invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
end local 8 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: 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
aload 2
invokestatic jdk.internal.foreign.abi.SharedUtils.vhPrimitiveOrAddress:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/invoke/VarHandle;
astore 6
start local 6 24: aconst_null
astore 7
aconst_null
astore 8
25: aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.stackPtr:()Ljdk/incubator/foreign/MemoryAddress;
26: aload 2
invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
invokeinterface jdk.incubator.foreign.MemoryAddress.asSegmentRestricted:(J)Ljdk/incubator/foreign/MemorySegment;
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
27: invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.handoffIfNeeded:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
astore 9
start local 9 28: aload 6
aload 9
invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)Ljava/lang/Object;
astore 10
start local 10 29: aload 0
aload 2
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.postAlignStack:(Ljdk/incubator/foreign/MemoryLayout;)V
30: aload 10
astore 5
start local 5 31: aload 9
ifnull 32
aload 9
invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
32: 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
end local 5 33: goto 41
end local 10 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: aload 9
ifnull 36
aload 9
invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
end local 9 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 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: StackMap locals:
StackMap stack: java.lang.Object
areturn
42: StackMap locals:
StackMap stack:
invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$SWITCH_TABLE$jdk$internal$foreign$abi$aarch64$TypeClass:()[I
aload 4
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: StackMap locals:
StackMap stack:
aload 3
aload 2
invokeinterface jdk.internal.foreign.abi.SharedUtils$Allocator.allocate:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/MemorySegment;
astore 6
start local 6 44: lconst_0
lstore 7
start local 7 45: goto 51
46: 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
invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
lload 7
lsub
ldc 8
invokestatic java.lang.Math.min:(JJ)J
lstore 9
start local 9 47: aload 6
lload 7
lload 9
invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(JJ)Ljdk/incubator/foreign/MemorySegment;
astore 11
start local 11 48: aload 11
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentGPOffset:()J
lload 9
invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(JJ)Ljdk/incubator/foreign/MemorySegment;
invokeinterface jdk.incubator.foreign.MemorySegment.copyFrom:(Ljdk/incubator/foreign/MemorySegment;)V
49: aload 0
iconst_1
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeGPSlots:(I)V
50: lload 7
lload 9
ladd
lstore 7
end local 11 end local 9 51: StackMap locals:
StackMap stack:
lload 7
aload 2
invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
lcmp
iflt 46
52: aload 6
astore 5
start local 5 53: aload 5
end local 5 54: goto 105
end local 7 end local 6 55: 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
aload 2
invokeinterface jdk.internal.foreign.abi.SharedUtils$Allocator.allocate:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/MemorySegment;
astore 6
start local 6 56: aload 2
checkcast jdk.incubator.foreign.GroupLayout
astore 7
start local 7 57: lconst_0
lstore 8
start local 8 58: aload 7
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
start local 10 60: getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.$assertionsDisabled:Z
ifne 61
aload 10
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: 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
invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
lstore 12
start local 12 62: aload 6
lload 8
lload 12
invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(JJ)Ljdk/incubator/foreign/MemorySegment;
astore 14
start local 14 63: aload 14
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.fpRegsArea:Ljdk/incubator/foreign/MemorySegment;
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentFPOffset:()J
lload 12
invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(JJ)Ljdk/incubator/foreign/MemorySegment;
invokeinterface jdk.incubator.foreign.MemorySegment.copyFrom:(Ljdk/incubator/foreign/MemorySegment;)V
64: aload 0
iconst_1
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeFPSlots:(I)V
65: lload 8
lload 12
ladd
lstore 8
end local 14 end local 12 end local 10 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:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 59
67: aload 6
astore 5
start local 5 68: aload 5
end local 5 69: goto 105
end local 8 end local 7 end local 6 70: 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: astore 6
start local 6 72: aload 6
73: aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentGPOffset:()J
invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(J)Ljdk/incubator/foreign/MemorySegment;
74: invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)Ljdk/incubator/foreign/MemoryAddress;
astore 7
start local 7 75: aload 0
iconst_1
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeGPSlots:(I)V
76: aconst_null
astore 8
aconst_null
astore 9
77: aload 7
78: aload 2
invokeinterface jdk.incubator.foreign.MemoryLayout.byteSize:()J
invokeinterface jdk.incubator.foreign.MemoryAddress.asSegmentRestricted:(J)Ljdk/incubator/foreign/MemorySegment;
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
79: invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.handoffIfNeeded:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
astore 10
start local 10 80: aload 3
aload 2
invokeinterface jdk.internal.foreign.abi.SharedUtils$Allocator.allocate:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/incubator/foreign/MemorySegment;
astore 11
start local 11 81: aload 11
aload 10
invokeinterface jdk.incubator.foreign.MemorySegment.copyFrom:(Ljdk/incubator/foreign/MemorySegment;)V
82: aload 11
astore 5
start local 5 83: aload 10
ifnull 84
aload 10
invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
84: 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
end local 5 85: goto 105
end local 11 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: aload 10
ifnull 88
aload 10
invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
end local 10 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 end local 6 92: 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
aload 2
invokestatic jdk.internal.foreign.abi.SharedUtils.vhPrimitiveOrAddress:(Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)Ljava/lang/invoke/VarHandle;
astore 6
start local 6 93: aload 6
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
aload 0
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
start local 7 94: aload 0
iconst_1
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeGPSlots:(I)V
95: aload 7
astore 5
start local 5 96: aload 5
end local 5 97: goto 105
end local 7 end local 6 98: StackMap locals:
StackMap stack:
aload 2
aload 1
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
start local 6 99: aload 6
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.fpRegsArea:Ljdk/incubator/foreign/MemorySegment;
aload 0
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
start local 7 100: aload 0
iconst_1
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeFPSlots:(I)V
101: aload 7
astore 5
start local 5 102: aload 5
end local 5 103: goto 105
end local 7 end local 6 StackMap locals:
StackMap stack:
104: new java.lang.IncompatibleClassChangeError
dup
invokespecial java.lang.IncompatibleClassChangeError.<init>:()V
athrow
105: StackMap locals:
StackMap stack: java.lang.Object
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 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 start local 1 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 1
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
start local 2 3: aload 2
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 2
invokestatic jdk.internal.foreign.abi.aarch64.TypeClass.classifyLayout:(Ljdk/incubator/foreign/MemoryLayout;)Ljdk/internal/foreign/abi/aarch64/TypeClass;
astore 6
start local 6 5: aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentGPOffset:()J
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.currentFPOffset:()J
aload 6
aload 2
invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.isRegOverflow:(JJLjdk/internal/foreign/abi/aarch64/TypeClass;Ljdk/incubator/foreign/MemoryLayout;)Z
ifeq 9
6: aload 0
aload 2
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.preAlignStack:(Ljdk/incubator/foreign/MemoryLayout;)V
7: aload 0
aload 2
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.postAlignStack:(Ljdk/incubator/foreign/MemoryLayout;)V
8: 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
getstatic jdk.internal.foreign.abi.aarch64.TypeClass.FLOAT:Ljdk/internal/foreign/abi/aarch64/TypeClass;
if_acmpeq 10
aload 6
getstatic jdk.internal.foreign.abi.aarch64.TypeClass.STRUCT_HFA:Ljdk/internal/foreign/abi/aarch64/TypeClass;
if_acmpne 12
10: StackMap locals:
StackMap stack:
aload 0
aload 2
invokestatic jdk.internal.foreign.abi.aarch64.AArch64VaList.numSlots:(Ljdk/incubator/foreign/MemoryLayout;)I
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeFPSlots:(I)V
11: goto 16
StackMap locals:
StackMap stack:
12: aload 6
getstatic jdk.internal.foreign.abi.aarch64.TypeClass.STRUCT_REFERENCE:Ljdk/internal/foreign/abi/aarch64/TypeClass;
if_acmpne 15
13: aload 0
iconst_1
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.consumeGPSlots:(I)V
14: goto 16
15: StackMap locals:
StackMap stack:
aload 0
aload 2
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 end local 2 16: 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: return
end local 1 end local 0 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 0: new jdk.internal.foreign.abi.aarch64.AArch64VaList$Builder
dup
aload 0
invokespecial jdk.internal.foreign.abi.aarch64.AArch64VaList$Builder.<init>:(Ljdk/internal/foreign/abi/SharedUtils$Allocator;)V
areturn
end local 0 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 0: aload 0
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 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 0: aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
invokeinterface jdk.incubator.foreign.MemorySegment.isAlive:()Z
ireturn
end local 0 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 0: aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
invokeinterface jdk.incubator.foreign.MemorySegment.close:()V
1: aload 0
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: return
end local 0 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 0: aload 0
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 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 start local 1 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 0
aload 1
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 end local 0 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 start local 1 0: aload 1
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
start local 2 1: aload 2
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.segment:Ljdk/incubator/foreign/MemorySegment;
invokeinterface jdk.incubator.foreign.MemorySegment.copyFrom:(Ljdk/incubator/foreign/MemorySegment;)V
2: new jdk.internal.foreign.abi.aarch64.AArch64VaList
dup
aload 2
aload 0
getfield jdk.internal.foreign.abi.aarch64.AArch64VaList.gpRegsArea:Ljdk/incubator/foreign/MemorySegment;
aload 0
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 end local 1 end local 0 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 0: aload 0
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 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 0: aload 0
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 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 start local 2 start local 4 start local 5 0: aload 4
getstatic jdk.internal.foreign.abi.aarch64.TypeClass.FLOAT:Ljdk/internal/foreign/abi/aarch64/TypeClass;
if_acmpeq 1
aload 4
getstatic jdk.internal.foreign.abi.aarch64.TypeClass.STRUCT_HFA:Ljdk/internal/foreign/abi/aarch64/TypeClass;
if_acmpne 3
1: StackMap locals:
StackMap stack:
lload 2
getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.MAX_FP_OFFSET:I
aload 5
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: StackMap locals:
StackMap stack:
aload 4
getstatic jdk.internal.foreign.abi.aarch64.TypeClass.STRUCT_REFERENCE:Ljdk/internal/foreign/abi/aarch64/TypeClass;
if_acmpne 6
4: lload 0
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: StackMap locals:
StackMap stack:
lload 0
getstatic jdk.internal.foreign.abi.aarch64.AArch64VaList.MAX_GP_OFFSET:I
aload 5
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 end local 4 end local 2 end local 0 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 0: new java.lang.StringBuilder
dup
ldc "AArch64VaList{__stack="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.stackPtr:()Ljdk/incubator/foreign/MemoryAddress;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
2: ldc ", __gr_top="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.grTop:()Ljdk/incubator/foreign/MemoryAddress;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
3: ldc ", __vr_top="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.vrTop:()Ljdk/incubator/foreign/MemoryAddress;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
4: ldc ", __gr_offs="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.grOffs:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
5: ldc ", __vr_offs="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual jdk.internal.foreign.abi.aarch64.AArch64VaList.vrOffs:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
6: bipush 125
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
7: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 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 start local 1 0: aload 0
invokeinterface jdk.incubator.foreign.MemorySegment.ownerThread:()Ljava/lang/Thread;
aload 1
if_acmpne 2
1: aload 0
goto 3
StackMap locals:
StackMap stack:
2: aload 0
aload 1
invokeinterface jdk.incubator.foreign.MemorySegment.handoff:(Ljava/lang/Thread;)Ljdk/incubator/foreign/MemorySegment;
3: StackMap locals:
StackMap stack: jdk.incubator.foreign.MemorySegment
areturn
end local 1 end local 0 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: 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: 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