final class com.google.protobuf.UnsafeUtil$Android32MemoryAccessor extends com.google.protobuf.UnsafeUtil$MemoryAccessor
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.google.protobuf.UnsafeUtil$Android32MemoryAccessor
super_class: com.google.protobuf.UnsafeUtil$MemoryAccessor
{
private static final long SMALL_ADDRESS_MASK;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -1
private static int smallAddress(long);
descriptor: (J)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: ldc -1
lload 0
land
l2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 address J
MethodParameters:
Name Flags
address
void <init>(sun.misc.Unsafe);
descriptor: (Lsun/misc/Unsafe;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial com.google.protobuf.UnsafeUtil$MemoryAccessor.<init>:(Lsun/misc/Unsafe;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 2 1 unsafe Lsun/misc/Unsafe;
MethodParameters:
Name Flags
unsafe
public byte getByte(long);
descriptor: (J)B
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: new java.lang.UnsupportedOperationException
dup
invokespecial java.lang.UnsupportedOperationException.<init>:()V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 1 1 address J
MethodParameters:
Name Flags
address
public void putByte(long, byte);
descriptor: (JB)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 3 0: new java.lang.UnsupportedOperationException
dup
invokespecial java.lang.UnsupportedOperationException.<init>:()V
athrow
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 1 1 address J
0 1 3 value B
MethodParameters:
Name Flags
address
value
public int getInt(long);
descriptor: (J)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: new java.lang.UnsupportedOperationException
dup
invokespecial java.lang.UnsupportedOperationException.<init>:()V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 1 1 address J
MethodParameters:
Name Flags
address
public void putInt(long, int);
descriptor: (JI)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 3 0: new java.lang.UnsupportedOperationException
dup
invokespecial java.lang.UnsupportedOperationException.<init>:()V
athrow
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 1 1 address J
0 1 3 value I
MethodParameters:
Name Flags
address
value
public long getLong(long);
descriptor: (J)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: new java.lang.UnsupportedOperationException
dup
invokespecial java.lang.UnsupportedOperationException.<init>:()V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 1 1 address J
MethodParameters:
Name Flags
address
public void putLong(long, long);
descriptor: (JJ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 3 0: new java.lang.UnsupportedOperationException
dup
invokespecial java.lang.UnsupportedOperationException.<init>:()V
athrow
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 1 1 address J
0 1 3 value J
MethodParameters:
Name Flags
address
value
public byte getByte(java.lang.Object, long);
descriptor: (Ljava/lang/Object;J)B
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.google.protobuf.UnsafeUtil.IS_BIG_ENDIAN:Z
ifeq 2
1: aload 1
lload 2
invokestatic com.google.protobuf.UnsafeUtil.getByteBigEndian:(Ljava/lang/Object;J)B
ireturn
2: StackMap locals:
StackMap stack:
aload 1
lload 2
invokestatic com.google.protobuf.UnsafeUtil.getByteLittleEndian:(Ljava/lang/Object;J)B
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 3 1 target Ljava/lang/Object;
0 3 2 offset J
MethodParameters:
Name Flags
target
offset
public void putByte(java.lang.Object, long, byte);
descriptor: (Ljava/lang/Object;JB)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 4 0: getstatic com.google.protobuf.UnsafeUtil.IS_BIG_ENDIAN:Z
ifeq 3
1: aload 1
lload 2
iload 4
invokestatic com.google.protobuf.UnsafeUtil.putByteBigEndian:(Ljava/lang/Object;JB)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 1
lload 2
iload 4
invokestatic com.google.protobuf.UnsafeUtil.putByteLittleEndian:(Ljava/lang/Object;JB)V
4: StackMap locals:
StackMap stack:
return
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 5 1 target Ljava/lang/Object;
0 5 2 offset J
0 5 4 value B
MethodParameters:
Name Flags
target
offset
value
public boolean getBoolean(java.lang.Object, long);
descriptor: (Ljava/lang/Object;J)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.google.protobuf.UnsafeUtil.IS_BIG_ENDIAN:Z
ifeq 2
1: aload 1
lload 2
invokestatic com.google.protobuf.UnsafeUtil.getBooleanBigEndian:(Ljava/lang/Object;J)Z
ireturn
2: StackMap locals:
StackMap stack:
aload 1
lload 2
invokestatic com.google.protobuf.UnsafeUtil.getBooleanLittleEndian:(Ljava/lang/Object;J)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 3 1 target Ljava/lang/Object;
0 3 2 offset J
MethodParameters:
Name Flags
target
offset
public void putBoolean(java.lang.Object, long, boolean);
descriptor: (Ljava/lang/Object;JZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 4 0: getstatic com.google.protobuf.UnsafeUtil.IS_BIG_ENDIAN:Z
ifeq 3
1: aload 1
lload 2
iload 4
invokestatic com.google.protobuf.UnsafeUtil.putBooleanBigEndian:(Ljava/lang/Object;JZ)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 1
lload 2
iload 4
invokestatic com.google.protobuf.UnsafeUtil.putBooleanLittleEndian:(Ljava/lang/Object;JZ)V
4: StackMap locals:
StackMap stack:
return
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 5 1 target Ljava/lang/Object;
0 5 2 offset J
0 5 4 value Z
MethodParameters:
Name Flags
target
offset
value
public float getFloat(java.lang.Object, long);
descriptor: (Ljava/lang/Object;J)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
lload 2
invokevirtual com.google.protobuf.UnsafeUtil$Android32MemoryAccessor.getInt:(Ljava/lang/Object;J)I
invokestatic java.lang.Float.intBitsToFloat:(I)F
freturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 1 1 target Ljava/lang/Object;
0 1 2 offset J
MethodParameters:
Name Flags
target
offset
public void putFloat(java.lang.Object, long, float);
descriptor: (Ljava/lang/Object;JF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
aload 1
lload 2
fload 4
invokestatic java.lang.Float.floatToIntBits:(F)I
invokevirtual com.google.protobuf.UnsafeUtil$Android32MemoryAccessor.putInt:(Ljava/lang/Object;JI)V
1: return
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 2 1 target Ljava/lang/Object;
0 2 2 offset J
0 2 4 value F
MethodParameters:
Name Flags
target
offset
value
public double getDouble(java.lang.Object, long);
descriptor: (Ljava/lang/Object;J)D
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
lload 2
invokevirtual com.google.protobuf.UnsafeUtil$Android32MemoryAccessor.getLong:(Ljava/lang/Object;J)J
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 1 1 target Ljava/lang/Object;
0 1 2 offset J
MethodParameters:
Name Flags
target
offset
public void putDouble(java.lang.Object, long, double);
descriptor: (Ljava/lang/Object;JD)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
aload 1
lload 2
dload 4
invokestatic java.lang.Double.doubleToLongBits:(D)J
invokevirtual com.google.protobuf.UnsafeUtil$Android32MemoryAccessor.putLong:(Ljava/lang/Object;JJ)V
1: return
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 2 1 target Ljava/lang/Object;
0 2 2 offset J
0 2 4 value D
MethodParameters:
Name Flags
target
offset
value
public void copyMemory(long, byte[], long, long);
descriptor: (J[BJJ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=8, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 6 0: new java.lang.UnsupportedOperationException
dup
invokespecial java.lang.UnsupportedOperationException.<init>:()V
athrow
end local 6 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 1 1 srcOffset J
0 1 3 target [B
0 1 4 targetIndex J
0 1 6 length J
MethodParameters:
Name Flags
srcOffset
target
targetIndex
length
public void copyMemory(byte[], long, long, long);
descriptor: ([BJJJ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 6 0: new java.lang.UnsupportedOperationException
dup
invokespecial java.lang.UnsupportedOperationException.<init>:()V
athrow
end local 6 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 1 1 src [B
0 1 2 srcIndex J
0 1 4 targetOffset J
0 1 6 length J
MethodParameters:
Name Flags
src
srcIndex
targetOffset
length
public java.lang.Object getStaticObject(java.lang.reflect.Field);
descriptor: (Ljava/lang/reflect/Field;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aconst_null
invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.IllegalAccessException
pop
3: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/google/protobuf/UnsafeUtil$Android32MemoryAccessor;
0 4 1 field Ljava/lang/reflect/Field;
Exception table:
from to target type
0 1 2 Class java.lang.IllegalAccessException
MethodParameters:
Name Flags
field
}
SourceFile: "UnsafeUtil.java"
NestHost: com.google.protobuf.UnsafeUtil
InnerClasses:
private final Android32MemoryAccessor = com.google.protobuf.UnsafeUtil$Android32MemoryAccessor of com.google.protobuf.UnsafeUtil
private abstract MemoryAccessor = com.google.protobuf.UnsafeUtil$MemoryAccessor of com.google.protobuf.UnsafeUtil