public abstract class org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter implements org.graalvm.compiler.core.common.util.TypeWriter
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter
super_class: java.lang.Object
{
private static final sun.misc.Unsafe UNSAFE;
descriptor: Lsun/misc/Unsafe;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int MIN_CHUNK_LENGTH;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 200
private static final int MAX_CHUNK_LENGTH;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 16000
public static final long HIGH_WORD_SHIFT;
descriptor: J
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 6
public static final long NUM_HIGH_CODES;
descriptor: J
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 64
public static final long NUM_LOW_CODES;
descriptor: J
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 192
public static final long MAX_BYTES;
descriptor: J
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 11
protected final org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk firstChunk;
descriptor: Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk writeChunk;
descriptor: Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
flags: (0x0004) ACC_PROTECTED
protected int totalSize;
descriptor: I
flags: (0x0004) ACC_PROTECTED
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.$assertionsDisabled:Z
3: invokestatic org.graalvm.compiler.serviceprovider.GraalUnsafeAccess.getUnsafe:()Lsun/misc/Unsafe;
putstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.UNSAFE:Lsun/misc/Unsafe;
4: return
LocalVariableTable:
Start End Slot Name Signature
public static org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter create(boolean);
descriptor: (Z)Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
ifeq 2
1: new org.graalvm.compiler.core.common.util.UnalignedUnsafeArrayTypeWriter
dup
invokespecial org.graalvm.compiler.core.common.util.UnalignedUnsafeArrayTypeWriter.<init>:()V
areturn
2: StackMap locals:
StackMap stack:
new org.graalvm.compiler.core.common.util.AlignedUnsafeArrayTypeWriter
dup
invokespecial org.graalvm.compiler.core.common.util.AlignedUnsafeArrayTypeWriter.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 supportsUnalignedMemoryAccess Z
MethodParameters:
Name Flags
supportsUnalignedMemoryAccess
protected void <init>();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk
dup
sipush 200
invokespecial org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.<init>:(I)V
putfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.firstChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
2: aload 0
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.firstChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
putfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
public final long getBytesWritten();
descriptor: ()J
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.totalSize:I
i2l
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
public final byte[] toArray(byte[]);
descriptor: ([B)[B
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: getstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.$assertionsDisabled:Z
ifne 1
aload 1
arraylength
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.totalSize:I
if_icmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 2: aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.firstChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
astore 3
start local 3 3: goto 7
4: StackMap locals: int org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk
StackMap stack:
aload 3
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.data:[B
iconst_0
aload 1
iload 2
aload 3
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.size:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
5: iload 2
aload 3
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.size:I
iadd
istore 2
6: aload 3
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.next:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
astore 3
StackMap locals:
StackMap stack:
7: aload 3
ifnonnull 4
end local 3 8: getstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.$assertionsDisabled:Z
ifne 9
iload 2
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.totalSize:I
if_icmpeq 9
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
9: StackMap locals:
StackMap stack:
aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 10 1 result [B
2 10 2 resultIdx I
3 8 3 cur Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
MethodParameters:
Name Flags
result
public final java.nio.ByteBuffer toByteBuffer(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)Ljava/nio/ByteBuffer;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: getstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.$assertionsDisabled:Z
ifne 1
aload 1
invokevirtual java.nio.ByteBuffer.remaining:()I
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.totalSize:I
if_icmple 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.nio.ByteBuffer.position:()I
istore 2
start local 2 2: aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.firstChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
astore 3
start local 3 3: goto 6
4: StackMap locals: int org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk
StackMap stack:
aload 1
aload 3
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.data:[B
iconst_0
aload 3
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.size:I
invokevirtual java.nio.ByteBuffer.put:([BII)Ljava/nio/ByteBuffer;
pop
5: aload 3
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.next:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
astore 3
StackMap locals:
StackMap stack:
6: aload 3
ifnonnull 4
end local 3 7: getstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.$assertionsDisabled:Z
ifne 8
aload 1
invokevirtual java.nio.ByteBuffer.position:()I
iload 2
isub
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.totalSize:I
if_icmpeq 8
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
8: StackMap locals:
StackMap stack:
aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 9 1 buffer Ljava/nio/ByteBuffer;
2 9 2 initialPos I
3 7 3 cur Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
MethodParameters:
Name Flags
buffer
public final byte[] toArray();
descriptor: ()[B
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.getBytesWritten:()J
invokestatic org.graalvm.compiler.core.common.util.TypeConversion.asS4:(J)I
newarray 8
astore 1
start local 1 1: aload 0
aload 1
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.toArray:([B)[B
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
1 2 1 result [B
public final void putS1(long);
descriptor: (J)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
iconst_1
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeOffset:(I)J
lstore 3
start local 3 1: getstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.UNSAFE:Lsun/misc/Unsafe;
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.data:[B
lload 3
lload 1
invokestatic org.graalvm.compiler.core.common.util.TypeConversion.asS1:(J)B
invokevirtual sun.misc.Unsafe.putByte:(Ljava/lang/Object;JB)V
2: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 3 1 value J
1 3 3 offset J
MethodParameters:
Name Flags
value
public final void putU1(long);
descriptor: (J)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
iconst_1
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeOffset:(I)J
lstore 3
start local 3 1: getstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.UNSAFE:Lsun/misc/Unsafe;
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.data:[B
lload 3
lload 1
invokestatic org.graalvm.compiler.core.common.util.TypeConversion.asU1:(J)B
invokevirtual sun.misc.Unsafe.putByte:(Ljava/lang/Object;JB)V
2: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 3 1 value J
1 3 3 offset J
MethodParameters:
Name Flags
value
public final void putU2(long);
descriptor: (J)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
invokestatic org.graalvm.compiler.core.common.util.TypeConversion.asU2:(J)S
i2l
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.putS2:(J)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 2 1 value J
MethodParameters:
Name Flags
value
public final void putU4(long);
descriptor: (J)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
invokestatic org.graalvm.compiler.core.common.util.TypeConversion.asU4:(J)I
i2l
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.putS4:(J)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 2 1 value J
MethodParameters:
Name Flags
value
public void putS2(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
iconst_2
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeOffset:(I)J
lstore 3
start local 3 1: aload 0
lload 1
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
lload 3
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.putS2:(JLorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;J)V
2: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 3 1 value J
1 3 3 offset J
MethodParameters:
Name Flags
value
public void putS4(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
iconst_4
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeOffset:(I)J
lstore 3
start local 3 1: aload 0
lload 1
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
lload 3
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.putS4:(JLorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;J)V
2: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 3 1 value J
1 3 3 offset J
MethodParameters:
Name Flags
value
public void putS8(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
bipush 8
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeOffset:(I)J
lstore 3
start local 3 1: aload 0
lload 1
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
lload 3
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.putS8:(JLorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;J)V
2: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 3 1 value J
1 3 3 offset J
MethodParameters:
Name Flags
value
protected abstract void putS2(long, org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk, long);
descriptor: (JLorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;J)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
value
chunk
offset
protected abstract void putS4(long, org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk, long);
descriptor: (JLorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;J)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
value
chunk
offset
protected abstract void putS8(long, org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk, long);
descriptor: (JLorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;J)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
value
chunk
offset
protected long writeOffset(int);
descriptor: (I)J
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.size:I
iload 1
iadd
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.data:[B
arraylength
if_icmplt 4
1: new org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk
dup
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.data:[B
arraylength
iconst_2
imul
sipush 16000
invokestatic java.lang.Math.min:(II)I
invokespecial org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.<init>:(I)V
astore 2
start local 2 2: aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
aload 2
putfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.next:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
3: aload 0
aload 2
putfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
end local 2 4: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.$assertionsDisabled:Z
ifne 5
getstatic sun.misc.Unsafe.ARRAY_BYTE_INDEX_SCALE:I
iconst_1
if_icmpeq 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.size:I
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
iadd
i2l
lstore 2
start local 2 6: aload 0
dup
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.totalSize:I
iload 1
iadd
putfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.totalSize:I
7: aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
dup
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.size:I
iload 1
iadd
putfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.size:I
8: getstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.$assertionsDisabled:Z
ifne 9
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.size:I
aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writeChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.data:[B
arraylength
if_icmple 9
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
9: StackMap locals: long
StackMap stack:
lload 2
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 10 1 writeBytes I
2 4 2 newChunk Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
6 10 2 result J
MethodParameters:
Name Flags
writeBytes
public void patchS4(long, long);
descriptor: (JJ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=10, args_size=3
start local 0 start local 1 start local 3 0: lconst_0
lstore 5
start local 5 1: aload 0
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.firstChunk:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
astore 7
start local 7 2: goto 5
3: StackMap locals: long org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk
StackMap stack:
lload 5
aload 7
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.size:I
i2l
ladd
lstore 5
4: aload 7
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.next:Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
astore 7
5: StackMap locals:
StackMap stack:
lload 5
aload 7
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.size:I
i2l
ladd
lload 3
lcmp
ifle 3
6: lload 3
lload 5
lsub
lstore 8
start local 8 7: getstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.$assertionsDisabled:Z
ifne 8
lload 8
ldc 4
ladd
aload 7
getfield org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk.size:I
i2l
lcmp
ifle 8
new java.lang.AssertionError
dup
ldc "out of bounds"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
8: StackMap locals: long
StackMap stack:
aload 0
lload 1
aload 7
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
lload 8
ladd
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.putS4:(JLorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;J)V
9: return
end local 8 end local 7 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 10 1 value J
0 10 3 offset J
1 10 5 chunkStartOffset J
2 10 7 chunk Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter$Chunk;
7 10 8 targetOffset J
MethodParameters:
Name Flags
value
offset
public void putSV(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
invokestatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.encodeSign:(J)J
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.write:(J)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 2 1 value J
MethodParameters:
Name Flags
value
public void putUV(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.write:(J)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 2 1 value J
MethodParameters:
Name Flags
value
private static long encodeSign(long);
descriptor: (J)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: lload 0
iconst_1
lshl
lload 0
bipush 63
lshr
lxor
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 value J
MethodParameters:
Name Flags
value
private void write(long);
descriptor: (J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
ldc 192
invokestatic org.graalvm.compiler.core.common.calc.UnsignedMath.belowThan:(JJ)Z
ifeq 3
1: aload 0
lload 1
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.putU1:(J)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
lload 1
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.writePacked:(J)V
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 5 1 value J
MethodParameters:
Name Flags
value
private void writePacked(long);
descriptor: (J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=8, args_size=2
start local 0 start local 1 0: lload 1
lstore 3
start local 3 1: iconst_1
istore 5
start local 5 2: goto 8
3: StackMap locals: long int
StackMap stack:
lload 3
ldc 192
lsub
lstore 3
4: ldc 192
lload 3
ldc 63
land
ladd
lstore 6
start local 6 5: lload 3
bipush 6
lushr
lstore 3
6: aload 0
lload 6
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.putU1:(J)V
end local 6 7: iinc 5 1
StackMap locals:
StackMap stack:
8: lload 3
ldc 192
invokestatic org.graalvm.compiler.core.common.calc.UnsignedMath.aboveOrEqual:(JJ)Z
ifeq 9
iload 5
i2l
ldc 11
lcmp
iflt 3
end local 5 9: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.$assertionsDisabled:Z
ifne 10
lload 3
lload 3
ldc 255
land
lcmp
ifeq 10
new java.lang.AssertionError
dup
ldc "not a byte"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
10: StackMap locals:
StackMap stack:
aload 0
lload 3
ldc 255
land
invokevirtual org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter.putU1:(J)V
11: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/graalvm/compiler/core/common/util/UnsafeArrayTypeWriter;
0 12 1 value J
1 12 3 sum J
2 9 5 i I
5 7 6 u1 J
MethodParameters:
Name Flags
value
}
SourceFile: "UnsafeArrayTypeWriter.java"
NestMembers:
org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk
InnerClasses:
Chunk = org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter$Chunk of org.graalvm.compiler.core.common.util.UnsafeArrayTypeWriter