final class java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle extends java.lang.invoke.VarHandleByteArrayAsLongs$ByteArrayViewVarHandle
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
super_class: java.lang.invoke.VarHandleByteArrayAsLongs$ByteArrayViewVarHandle
{
static final java.lang.invoke.VarForm FORM;
descriptor: Ljava/lang/invoke/VarForm;
flags: (0x0018) ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=9, locals=0, args_size=0
0: new java.lang.invoke.VarForm
dup
ldc Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
ldc Ljava/nio/ByteBuffer;
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
iconst_1
anewarray java.lang.Class
dup
iconst_0
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
aastore
invokespecial java.lang.invoke.VarForm.<init>:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)V
putstatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.FORM:Ljava/lang/invoke/VarForm;
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(boolean);
descriptor: (Z)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_0
invokespecial java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.<init>:(ZZ)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
0 2 1 be Z
MethodParameters:
Name Flags
be
private void <init>(boolean, boolean);
descriptor: (ZZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getstatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.FORM:Ljava/lang/invoke/VarForm;
iload 1
iload 2
invokespecial java.lang.invoke.VarHandleByteArrayAsLongs$ByteArrayViewVarHandle.<init>:(Ljava/lang/invoke/VarForm;ZZ)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
0 2 1 be Z
0 2 2 exact Z
MethodParameters:
Name Flags
be
exact
public java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle withInvokeExactBehavior();
descriptor: ()Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.hasInvokeExactBehavior:()Z
ifeq 2
1: aload 0
goto 3
2: StackMap locals:
StackMap stack:
new java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
dup
aload 0
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
iconst_1
invokespecial java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.<init>:(ZZ)V
3: StackMap locals:
StackMap stack: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
public java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle withInvokeBehavior();
descriptor: ()Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.hasInvokeExactBehavior:()Z
ifne 2
1: aload 0
goto 3
2: StackMap locals:
StackMap stack:
new java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
dup
aload 0
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
iconst_0
invokespecial java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.<init>:(ZZ)V
3: StackMap locals:
StackMap stack: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
final java.lang.invoke.MethodType accessModeTypeUncached(java.lang.invoke.VarHandle$AccessType);
descriptor: (Ljava/lang/invoke/VarHandle$AccessType;)Ljava/lang/invoke/MethodType;
flags: (0x0010) ACC_FINAL
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc Ljava/nio/ByteBuffer;
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
iconst_1
anewarray java.lang.Class
dup
iconst_0
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
aastore
invokevirtual java.lang.invoke.VarHandle$AccessType.accessModeType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
0 1 1 at Ljava/lang/invoke/VarHandle$AccessType;
MethodParameters:
Name Flags
at
static int index(java.nio.ByteBuffer, int);
descriptor: (Ljava/nio/ByteBuffer;I)I
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.NIO_ACCESS:Ljdk/internal/access/JavaNioAccess;
aload 0
invokeinterface jdk.internal.access.JavaNioAccess.bufferSegment:(Ljava/nio/Buffer;)Ljdk/internal/access/foreign/MemorySegmentProxy;
pop
1: iload 1
getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 0
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BUFFER_LIMIT:J
invokevirtual jdk.internal.misc.Unsafe.getInt:(Ljava/lang/Object;J)I
bipush 7
isub
aconst_null
invokestatic jdk.internal.util.Preconditions.checkIndex:(IILjava/util/function/BiFunction;)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 bb Ljava/nio/ByteBuffer;
0 2 1 index I
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
bb
index
static jdk.internal.misc.ScopedMemoryAccess$Scope scope(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.NIO_ACCESS:Ljdk/internal/access/JavaNioAccess;
aload 0
invokeinterface jdk.internal.access.JavaNioAccess.bufferSegment:(Ljava/nio/Buffer;)Ljdk/internal/access/foreign/MemorySegmentProxy;
astore 1
start local 1 1: aload 1
ifnull 3
2: aload 1
invokevirtual jdk.internal.access.foreign.MemorySegmentProxy.scope:()Ljdk/internal/misc/ScopedMemoryAccess$Scope;
goto 4
StackMap locals: jdk.internal.access.foreign.MemorySegmentProxy
StackMap stack:
3: aconst_null
4: StackMap locals:
StackMap stack: jdk.internal.misc.ScopedMemoryAccess$Scope
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 bb Ljava/nio/ByteBuffer;
1 5 1 segmentProxy Ljdk/internal/access/foreign/MemorySegmentProxy;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
bb
static int indexRO(java.nio.ByteBuffer, int);
descriptor: (Ljava/nio/ByteBuffer;I)I
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 0
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_IS_READ_ONLY:J
invokevirtual jdk.internal.misc.Unsafe.getBoolean:(Ljava/lang/Object;J)Z
ifeq 2
1: new java.nio.ReadOnlyBufferException
dup
invokespecial java.nio.ReadOnlyBufferException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
iload 1
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.index:(Ljava/nio/ByteBuffer;I)I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 bb Ljava/nio/ByteBuffer;
0 3 1 index I
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
bb
index
static long address(java.nio.ByteBuffer, int);
descriptor: (Ljava/nio/ByteBuffer;I)J
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=4, args_size=2
start local 0 start local 1 0: iload 1
i2l
getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 0
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BUFFER_ADDRESS:J
invokevirtual jdk.internal.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
ladd
lstore 2
start local 2 1: lload 2
ldc 7
land
lconst_0
lcmp
ifeq 3
2: iload 1
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.newIllegalStateExceptionForMisalignedAccess:(I)Ljava/lang/IllegalStateException;
athrow
3: StackMap locals: long
StackMap stack:
lload 2
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 bb Ljava/nio/ByteBuffer;
0 4 1 index I
1 4 2 address J
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
bb
index
static long get(java.lang.invoke.VarHandle, java.lang.Object, int);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;I)J
flags: (0x0008) ACC_STATIC
Code:
stack=9, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 3
start local 3 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 4
start local 4 2: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 4
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
3: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 4
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
4: aload 4
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.index:(Ljava/nio/ByteBuffer;I)I
i2l
getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 4
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BUFFER_ADDRESS:J
invokevirtual jdk.internal.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
ladd
5: aload 3
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getLongUnaligned:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JZ)J
lreturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 ob Ljava/lang/invoke/VarHandle;
0 7 1 obb Ljava/lang/Object;
0 7 2 index I
1 7 3 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 7 4 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
static void set(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)V
flags: (0x0008) ACC_STATIC
Code:
stack=9, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
3: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
4: aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
i2l
getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BUFFER_ADDRESS:J
invokevirtual jdk.internal.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
ladd
5: lload 3
6: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.putLongUnaligned:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJZ)V
8: return
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getVolatile(java.lang.invoke.VarHandle, java.lang.Object, int);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;I)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 3
start local 3 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 4
start local 4 2: aload 3
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 4
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 4
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 4
aload 4
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.index:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getLongVolatile:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;J)J
7: invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
lreturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 ob Ljava/lang/invoke/VarHandle;
0 8 1 obb Ljava/lang/Object;
0 8 2 index I
1 8 3 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 8 4 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
static void setVolatile(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)V
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
3: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
4: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
5: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.putLongVolatile:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)V
7: return
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 ob Ljava/lang/invoke/VarHandle;
0 8 1 obb Ljava/lang/Object;
0 8 2 index I
0 8 3 value J
1 8 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 8 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAcquire(java.lang.invoke.VarHandle, java.lang.Object, int);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;I)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 3
start local 3 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 4
start local 4 2: aload 3
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 4
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 4
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 4
aload 4
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.index:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getLongAcquire:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;J)J
7: invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
lreturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 ob Ljava/lang/invoke/VarHandle;
0 8 1 obb Ljava/lang/Object;
0 8 2 index I
1 8 3 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 8 4 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
static void setRelease(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)V
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
3: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
4: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
5: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.putLongRelease:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)V
7: return
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 ob Ljava/lang/invoke/VarHandle;
0 8 1 obb Ljava/lang/Object;
0 8 2 index I
0 8 3 value J
1 8 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 8 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getOpaque(java.lang.invoke.VarHandle, java.lang.Object, int);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;I)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 3
start local 3 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 4
start local 4 2: aload 3
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 4
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 4
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 4
aload 4
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.index:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getLongOpaque:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;J)J
7: invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
lreturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 ob Ljava/lang/invoke/VarHandle;
0 8 1 obb Ljava/lang/Object;
0 8 2 index I
1 8 3 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 8 4 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
static void setOpaque(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)V
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
3: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
4: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
5: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.putLongOpaque:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)V
7: return
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 ob Ljava/lang/invoke/VarHandle;
0 8 1 obb Ljava/lang/Object;
0 8 2 index I
0 8 3 value J
1 8 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 8 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static boolean compareAndSet(java.lang.invoke.VarHandle, java.lang.Object, int, long, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJJ)Z
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 7
start local 7 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 8
start local 8 2: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 8
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
3: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
4: aload 8
aload 8
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
5: aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 5
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.compareAndSetLong:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJJ)Z
ireturn
end local 8 end local 7 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 ob Ljava/lang/invoke/VarHandle;
0 7 1 obb Ljava/lang/Object;
0 7 2 index I
0 7 3 expected J
0 7 5 value J
1 7 7 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 7 8 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
expected
value
static long compareAndExchange(java.lang.invoke.VarHandle, java.lang.Object, int, long, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=11, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 7
start local 7 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 8
start local 8 2: aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 8
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 8
aload 8
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 5
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.compareAndExchangeLong:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJJ)J
8: invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
lreturn
end local 8 end local 7 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 expected J
0 9 5 value J
1 9 7 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 8 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
expected
value
static long compareAndExchangeAcquire(java.lang.invoke.VarHandle, java.lang.Object, int, long, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=11, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 7
start local 7 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 8
start local 8 2: aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 8
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 8
aload 8
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 5
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.compareAndExchangeLongAcquire:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJJ)J
8: invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
lreturn
end local 8 end local 7 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 expected J
0 9 5 value J
1 9 7 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 8 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
expected
value
static long compareAndExchangeRelease(java.lang.invoke.VarHandle, java.lang.Object, int, long, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=11, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 7
start local 7 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 8
start local 8 2: aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 8
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 8
aload 8
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 5
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.compareAndExchangeLongRelease:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJJ)J
8: invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
lreturn
end local 8 end local 7 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 expected J
0 9 5 value J
1 9 7 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 8 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
expected
value
static boolean weakCompareAndSetPlain(java.lang.invoke.VarHandle, java.lang.Object, int, long, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJJ)Z
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 7
start local 7 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 8
start local 8 2: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 8
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
3: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
4: aload 8
aload 8
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
5: aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 5
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.weakCompareAndSetLongPlain:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJJ)Z
ireturn
end local 8 end local 7 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 ob Ljava/lang/invoke/VarHandle;
0 7 1 obb Ljava/lang/Object;
0 7 2 index I
0 7 3 expected J
0 7 5 value J
1 7 7 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 7 8 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
expected
value
static boolean weakCompareAndSet(java.lang.invoke.VarHandle, java.lang.Object, int, long, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJJ)Z
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 7
start local 7 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 8
start local 8 2: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 8
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
3: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
4: aload 8
aload 8
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
5: aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 5
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.weakCompareAndSetLong:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJJ)Z
ireturn
end local 8 end local 7 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 ob Ljava/lang/invoke/VarHandle;
0 7 1 obb Ljava/lang/Object;
0 7 2 index I
0 7 3 expected J
0 7 5 value J
1 7 7 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 7 8 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
expected
value
static boolean weakCompareAndSetAcquire(java.lang.invoke.VarHandle, java.lang.Object, int, long, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJJ)Z
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 7
start local 7 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 8
start local 8 2: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 8
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
3: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
4: aload 8
aload 8
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
5: aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 5
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.weakCompareAndSetLongAcquire:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJJ)Z
ireturn
end local 8 end local 7 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 ob Ljava/lang/invoke/VarHandle;
0 7 1 obb Ljava/lang/Object;
0 7 2 index I
0 7 3 expected J
0 7 5 value J
1 7 7 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 7 8 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
expected
value
static boolean weakCompareAndSetRelease(java.lang.invoke.VarHandle, java.lang.Object, int, long, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJJ)Z
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 7
start local 7 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 8
start local 8 2: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 8
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
3: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
4: aload 8
aload 8
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
5: aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
aload 7
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 5
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
6: invokevirtual jdk.internal.misc.ScopedMemoryAccess.weakCompareAndSetLongRelease:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJJ)Z
ireturn
end local 8 end local 7 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 ob Ljava/lang/invoke/VarHandle;
0 7 1 obb Ljava/lang/Object;
0 7 2 index I
0 7 3 expected J
0 7 5 value J
1 7 7 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 7 8 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
expected
value
static long getAndSet(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=9, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndSetLong:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
8: invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndSetAcquire(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=9, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndSetLongAcquire:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
8: invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndSetRelease(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=9, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndSetLongRelease:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
8: invokestatic java.lang.invoke.VarHandleByteArrayAsLongs.convEndian:(ZJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndAdd(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndAddLong:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndAddConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 delta J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
delta
static long getAndAddAcquire(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndAddLongAcquire:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndAddConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 delta J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
delta
static long getAndAddRelease(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndAddLongRelease:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndAddConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 delta J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
delta
static long getAndAddConvEndianWithCAS(java.nio.ByteBuffer, int, long);
descriptor: (Ljava/nio/ByteBuffer;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=11, args_size=3
start local 0 start local 1 start local 2 0: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 0
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
astore 8
start local 8 1: aload 0
aload 0
iload 1
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
lstore 9
start local 9 2: StackMap locals: java.nio.ByteBuffer int long top top top top java.lang.Object long
StackMap stack:
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 0
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
aload 8
lload 9
invokevirtual jdk.internal.misc.ScopedMemoryAccess.getLongVolatile:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;J)J
lstore 4
start local 4 3: lload 4
invokestatic java.lang.Long.reverseBytes:(J)J
lstore 6
start local 6 4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
lload 9
5: lload 4
lload 6
lload 2
ladd
invokestatic java.lang.Long.reverseBytes:(J)J
6: invokevirtual jdk.internal.misc.Unsafe.weakCompareAndSetLong:(Ljava/lang/Object;JJJ)Z
7: ifeq 2
8: lload 6
lreturn
end local 9 end local 8 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 bb Ljava/nio/ByteBuffer;
0 9 1 index I
0 9 2 delta J
3 9 4 nativeExpectedValue J
4 9 6 expectedValue J
1 9 8 base Ljava/lang/Object;
2 9 9 offset J
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
bb
index
delta
static long getAndBitwiseOr(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndBitwiseOrLong:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndBitwiseOrConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndBitwiseOrRelease(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndBitwiseOrLongRelease:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndBitwiseOrConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndBitwiseOrAcquire(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndBitwiseOrLongAcquire:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndBitwiseOrConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndBitwiseOrConvEndianWithCAS(java.nio.ByteBuffer, int, long);
descriptor: (Ljava/nio/ByteBuffer;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=11, args_size=3
start local 0 start local 1 start local 2 0: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 0
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
astore 8
start local 8 1: aload 0
aload 0
iload 1
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
lstore 9
start local 9 2: StackMap locals: java.nio.ByteBuffer int long top top top top java.lang.Object long
StackMap stack:
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 0
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
aload 8
lload 9
invokevirtual jdk.internal.misc.ScopedMemoryAccess.getLongVolatile:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;J)J
lstore 4
start local 4 3: lload 4
invokestatic java.lang.Long.reverseBytes:(J)J
lstore 6
start local 6 4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
lload 9
5: lload 4
lload 6
lload 2
lor
invokestatic java.lang.Long.reverseBytes:(J)J
6: invokevirtual jdk.internal.misc.Unsafe.weakCompareAndSetLong:(Ljava/lang/Object;JJJ)Z
7: ifeq 2
8: lload 6
lreturn
end local 9 end local 8 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 bb Ljava/nio/ByteBuffer;
0 9 1 index I
0 9 2 value J
3 9 4 nativeExpectedValue J
4 9 6 expectedValue J
1 9 8 base Ljava/lang/Object;
2 9 9 offset J
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
bb
index
value
static long getAndBitwiseAnd(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndBitwiseAndLong:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndBitwiseAndConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndBitwiseAndRelease(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndBitwiseAndLongRelease:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndBitwiseAndConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndBitwiseAndAcquire(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndBitwiseAndLongAcquire:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndBitwiseAndConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndBitwiseAndConvEndianWithCAS(java.nio.ByteBuffer, int, long);
descriptor: (Ljava/nio/ByteBuffer;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=11, args_size=3
start local 0 start local 1 start local 2 0: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 0
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
astore 8
start local 8 1: aload 0
aload 0
iload 1
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
lstore 9
start local 9 2: StackMap locals: java.nio.ByteBuffer int long top top top top java.lang.Object long
StackMap stack:
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 0
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
aload 8
lload 9
invokevirtual jdk.internal.misc.ScopedMemoryAccess.getLongVolatile:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;J)J
lstore 4
start local 4 3: lload 4
invokestatic java.lang.Long.reverseBytes:(J)J
lstore 6
start local 6 4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
lload 9
5: lload 4
lload 6
lload 2
land
invokestatic java.lang.Long.reverseBytes:(J)J
6: invokevirtual jdk.internal.misc.Unsafe.weakCompareAndSetLong:(Ljava/lang/Object;JJJ)Z
7: ifeq 2
8: lload 6
lreturn
end local 9 end local 8 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 bb Ljava/nio/ByteBuffer;
0 9 1 index I
0 9 2 value J
3 9 4 nativeExpectedValue J
4 9 6 expectedValue J
1 9 8 base Ljava/lang/Object;
2 9 9 offset J
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
bb
index
value
static long getAndBitwiseXor(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndBitwiseXorLong:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndBitwiseXorConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndBitwiseXorRelease(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndBitwiseXorLongRelease:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndBitwiseXorConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndBitwiseXorAcquire(java.lang.invoke.VarHandle, java.lang.Object, int, long);
descriptor: (Ljava/lang/invoke/VarHandle;Ljava/lang/Object;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
checkcast java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle
astore 5
start local 5 1: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.nio.ByteBuffer
astore 6
start local 6 2: aload 5
getfield java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.be:Z
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BE:Z
if_icmpne 8
3: getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 6
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 6
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
5: aload 6
aload 6
iload 2
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
6: lload 3
7: invokevirtual jdk.internal.misc.ScopedMemoryAccess.getAndBitwiseXorLongAcquire:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;JJ)J
lreturn
8: StackMap locals: java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle java.nio.ByteBuffer
StackMap stack:
aload 6
iload 2
lload 3
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.getAndBitwiseXorConvEndianWithCAS:(Ljava/nio/ByteBuffer;IJ)J
lreturn
end local 6 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 ob Ljava/lang/invoke/VarHandle;
0 9 1 obb Ljava/lang/Object;
0 9 2 index I
0 9 3 value J
1 9 5 handle Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
2 9 6 bb Ljava/nio/ByteBuffer;
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
ob
obb
index
value
static long getAndBitwiseXorConvEndianWithCAS(java.nio.ByteBuffer, int, long);
descriptor: (Ljava/nio/ByteBuffer;IJ)J
flags: (0x0008) ACC_STATIC
Code:
stack=10, locals=11, args_size=3
start local 0 start local 1 start local 2 0: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 0
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.BYTE_BUFFER_HB:J
invokevirtual jdk.internal.misc.Unsafe.getReference:(Ljava/lang/Object;J)Ljava/lang/Object;
astore 8
start local 8 1: aload 0
aload 0
iload 1
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.indexRO:(Ljava/nio/ByteBuffer;I)I
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.address:(Ljava/nio/ByteBuffer;I)J
lstore 9
start local 9 2: StackMap locals: java.nio.ByteBuffer int long top top top top java.lang.Object long
StackMap stack:
getstatic java.lang.invoke.VarHandleByteArrayAsLongs.SCOPED_MEMORY_ACCESS:Ljdk/internal/misc/ScopedMemoryAccess;
aload 0
invokestatic java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.scope:(Ljava/nio/ByteBuffer;)Ljdk/internal/misc/ScopedMemoryAccess$Scope;
aload 8
lload 9
invokevirtual jdk.internal.misc.ScopedMemoryAccess.getLongVolatile:(Ljdk/internal/misc/ScopedMemoryAccess$Scope;Ljava/lang/Object;J)J
lstore 4
start local 4 3: lload 4
invokestatic java.lang.Long.reverseBytes:(J)J
lstore 6
start local 6 4: getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
aload 8
lload 9
5: lload 4
lload 6
lload 2
lxor
invokestatic java.lang.Long.reverseBytes:(J)J
6: invokevirtual jdk.internal.misc.Unsafe.weakCompareAndSetLong:(Ljava/lang/Object;JJJ)Z
7: ifeq 2
8: lload 6
lreturn
end local 9 end local 8 end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 bb Ljava/nio/ByteBuffer;
0 9 1 index I
0 9 2 value J
3 9 4 nativeExpectedValue J
4 9 6 expectedValue J
1 9 8 base Ljava/lang/Object;
2 9 9 offset J
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.ForceInline()
MethodParameters:
Name Flags
bb
index
value
public java.lang.invoke.VarHandle withInvokeExactBehavior();
descriptor: ()Ljava/lang/invoke/VarHandle;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.withInvokeExactBehavior:()Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.invoke.VarHandle withInvokeBehavior();
descriptor: ()Ljava/lang/invoke/VarHandle;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle.withInvokeBehavior:()Ljava/lang/invoke/VarHandleByteArrayAsLongs$ByteBufferHandle;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "VarHandleByteArrayAsLongs.java"
NestHost: java.lang.invoke.VarHandleByteArrayAsLongs
InnerClasses:
final AccessType = java.lang.invoke.VarHandle$AccessType of java.lang.invoke.VarHandle
private abstract ByteArrayViewVarHandle = java.lang.invoke.VarHandleByteArrayAsLongs$ByteArrayViewVarHandle of java.lang.invoke.VarHandleByteArrayAsLongs
final ByteBufferHandle = java.lang.invoke.VarHandleByteArrayAsLongs$ByteBufferHandle of java.lang.invoke.VarHandleByteArrayAsLongs
public abstract Scope = jdk.internal.misc.ScopedMemoryAccess$Scope of jdk.internal.misc.ScopedMemoryAccess