final class com.oracle.truffle.api.memory.UnsafeByteArraySupport extends com.oracle.truffle.api.memory.ByteArraySupport
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.oracle.truffle.api.memory.UnsafeByteArraySupport
super_class: com.oracle.truffle.api.memory.ByteArraySupport
{
private static final sun.misc.Unsafe UNSAFE;
descriptor: Lsun/misc/Unsafe;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
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=2, locals=0, args_size=0
0: ldc Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
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 com.oracle.truffle.api.memory.UnsafeByteArraySupport.$assertionsDisabled:Z
3: new com.oracle.truffle.api.memory.UnsafeByteArraySupport$1
dup
invokespecial com.oracle.truffle.api.memory.UnsafeByteArraySupport$1.<init>:()V
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast sun.misc.Unsafe
putstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
4: return
LocalVariableTable:
Start End Slot Name Signature
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.oracle.truffle.api.memory.ByteArraySupport.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
public byte getByte(byte[], int);
descriptor: ([BI)B
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
invokevirtual sun.misc.Unsafe.getByte:(Ljava/lang/Object;J)B
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 1 1 buffer [B
0 1 2 index I
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
public void putByte(byte[], int, byte);
descriptor: ([BIB)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
iload 3
invokevirtual sun.misc.Unsafe.putByte:(Ljava/lang/Object;JB)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 2 1 buffer [B
0 2 2 index I
0 2 3 value B
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
value
public short getShort(byte[], int);
descriptor: ([BI)S
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
invokevirtual sun.misc.Unsafe.getShort:(Ljava/lang/Object;J)S
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 1 1 buffer [B
0 1 2 index I
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
public void putShort(byte[], int, short);
descriptor: ([BIS)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
iload 3
invokevirtual sun.misc.Unsafe.putShort:(Ljava/lang/Object;JS)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 2 1 buffer [B
0 2 2 index I
0 2 3 value S
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
value
public int getInt(byte[], int);
descriptor: ([BI)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
invokevirtual sun.misc.Unsafe.getInt:(Ljava/lang/Object;J)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 1 1 buffer [B
0 1 2 index I
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
public void putInt(byte[], int, int);
descriptor: ([BII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
iload 3
invokevirtual sun.misc.Unsafe.putInt:(Ljava/lang/Object;JI)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 2 1 buffer [B
0 2 2 index I
0 2 3 value I
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
value
public long getLong(byte[], int);
descriptor: ([BI)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
invokevirtual sun.misc.Unsafe.getLong:(Ljava/lang/Object;J)J
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 1 1 buffer [B
0 1 2 index I
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
public void putLong(byte[], int, long);
descriptor: ([BIJ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
lload 3
invokevirtual sun.misc.Unsafe.putLong:(Ljava/lang/Object;JJ)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 2 1 buffer [B
0 2 2 index I
0 2 3 value J
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
value
public float getFloat(byte[], int);
descriptor: ([BI)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
invokevirtual sun.misc.Unsafe.getFloat:(Ljava/lang/Object;J)F
freturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 1 1 buffer [B
0 1 2 index I
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
public void putFloat(byte[], int, float);
descriptor: ([BIF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
fload 3
invokevirtual sun.misc.Unsafe.putFloat:(Ljava/lang/Object;JF)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 2 1 buffer [B
0 2 2 index I
0 2 3 value F
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
value
public double getDouble(byte[], int);
descriptor: ([BI)D
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
invokevirtual sun.misc.Unsafe.getDouble:(Ljava/lang/Object;J)D
dreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 1 1 buffer [B
0 1 2 index I
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
public void putDouble(byte[], int, double);
descriptor: ([BID)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.oracle.truffle.api.memory.UnsafeByteArraySupport.UNSAFE:Lsun/misc/Unsafe;
aload 1
getstatic sun.misc.Unsafe.ARRAY_BYTE_BASE_OFFSET:I
i2l
iload 2
invokestatic java.lang.Integer.toUnsignedLong:(I)J
ladd
dload 3
invokevirtual sun.misc.Unsafe.putDouble:(Ljava/lang/Object;JD)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/api/memory/UnsafeByteArraySupport;
0 2 1 buffer [B
0 2 2 index I
0 2 3 value D
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
buffer
index
value
}
SourceFile: "UnsafeByteArraySupport.java"
NestMembers:
com.oracle.truffle.api.memory.UnsafeByteArraySupport$1
InnerClasses:
com.oracle.truffle.api.memory.UnsafeByteArraySupport$1