public interface Pointer extends Unsigned, PointerBase
Do not use these methods to access Java objects, i.e., do not use
Word.fromObject(obj).readXxx()
. Instead, use ObjectAccess
or
BarrieredAccess
to access Java objects.
Modifier and Type | Method and Description |
---|---|
Pointer |
add(int val)
Returns a Unsigned whose value is
(this + val) . |
Pointer |
add(Unsigned val)
Returns a Unsigned whose value is
(this + val) . |
Pointer |
and(int val)
Returns a Unsigned whose value is
(this & val) . |
Pointer |
and(Unsigned val)
Returns a Unsigned whose value is
(this & val) . |
void |
initializeLong(int offset,
long val,
LocationIdentity locationIdentity)
Initializes the memory at address
(this + offset) . |
void |
initializeLong(WordBase offset,
long val,
LocationIdentity locationIdentity)
Initializes the memory at address
(this + offset) . |
Pointer |
or(int val)
Returns a Unsigned whose value is
(this | val) . |
Pointer |
or(Unsigned val)
Returns a Unsigned whose value is
(this | val) . |
byte |
readByte(int offset)
Reads the memory at address
(this + offset) . |
byte |
readByte(int offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
byte |
readByte(WordBase offset)
Reads the memory at address
(this + offset) . |
byte |
readByte(WordBase offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
char |
readChar(int offset)
Reads the memory at address
(this + offset) . |
char |
readChar(int offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
char |
readChar(WordBase offset)
Reads the memory at address
(this + offset) . |
char |
readChar(WordBase offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
double |
readDouble(int offset)
Reads the memory at address
(this + offset) . |
double |
readDouble(int offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
double |
readDouble(WordBase offset)
Reads the memory at address
(this + offset) . |
double |
readDouble(WordBase offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
float |
readFloat(int offset)
Reads the memory at address
(this + offset) . |
float |
readFloat(int offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
float |
readFloat(WordBase offset)
Reads the memory at address
(this + offset) . |
float |
readFloat(WordBase offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
int |
readInt(int offset)
Reads the memory at address
(this + offset) . |
int |
readInt(int offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
int |
readInt(WordBase offset)
Reads the memory at address
(this + offset) . |
int |
readInt(WordBase offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
long |
readLong(int offset)
Reads the memory at address
(this + offset) . |
long |
readLong(int offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
long |
readLong(WordBase offset)
Reads the memory at address
(this + offset) . |
long |
readLong(WordBase offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
Object |
readObject(int offset)
Reads the memory at address
(this + offset) . |
Object |
readObject(int offset,
HeapAccess.BarrierType barrierType)
Reads the memory at address
(this + offset) . |
Object |
readObject(int offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
Object |
readObject(WordBase offset)
Reads the memory at address
(this + offset) . |
Object |
readObject(WordBase offset,
HeapAccess.BarrierType barrierType)
Reads the memory at address
(this + offset) . |
Object |
readObject(WordBase offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
short |
readShort(int offset)
Reads the memory at address
(this + offset) . |
short |
readShort(int offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
short |
readShort(WordBase offset)
Reads the memory at address
(this + offset) . |
short |
readShort(WordBase offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
Word |
readWord(int offset)
Reads the memory at address
(this + offset) . |
Word |
readWord(int offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
Word |
readWord(WordBase offset)
Reads the memory at address
(this + offset) . |
Word |
readWord(WordBase offset,
LocationIdentity locationIdentity)
Reads the memory at address
(this + offset) . |
Pointer |
subtract(int val)
Returns a Unsigned whose value is
(this - val) . |
Pointer |
subtract(Unsigned val)
Returns a Unsigned whose value is
(this - val) . |
Object |
toObject()
Unsafe conversion of this Pointer to a Java language object.
|
void |
writeByte(int offset,
byte val)
Writes the memory at address
(this + offset) . |
void |
writeByte(int offset,
byte val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeByte(WordBase offset,
byte val)
Writes the memory at address
(this + offset) . |
void |
writeByte(WordBase offset,
byte val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeChar(int offset,
char val)
Writes the memory at address
(this + offset) . |
void |
writeChar(int offset,
char val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeChar(WordBase offset,
char val)
Writes the memory at address
(this + offset) . |
void |
writeChar(WordBase offset,
char val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeDouble(int offset,
double val)
Writes the memory at address
(this + offset) . |
void |
writeDouble(int offset,
double val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeDouble(WordBase offset,
double val)
Writes the memory at address
(this + offset) . |
void |
writeDouble(WordBase offset,
double val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeFloat(int offset,
float val)
Writes the memory at address
(this + offset) . |
void |
writeFloat(int offset,
float val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeFloat(WordBase offset,
float val)
Writes the memory at address
(this + offset) . |
void |
writeFloat(WordBase offset,
float val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeInt(int offset,
int val)
Writes the memory at address
(this + offset) . |
void |
writeInt(int offset,
int val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeInt(WordBase offset,
int val)
Writes the memory at address
(this + offset) . |
void |
writeInt(WordBase offset,
int val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeLong(int offset,
long val)
Writes the memory at address
(this + offset) . |
void |
writeLong(int offset,
long val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeLong(WordBase offset,
long val)
Writes the memory at address
(this + offset) . |
void |
writeLong(WordBase offset,
long val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeObject(int offset,
Object val)
Writes the memory at address
(this + offset) . |
void |
writeObject(int offset,
Object val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeObject(WordBase offset,
Object val)
Writes the memory at address
(this + offset) . |
void |
writeObject(WordBase offset,
Object val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeShort(int offset,
short val)
Writes the memory at address
(this + offset) . |
void |
writeShort(int offset,
short val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeShort(WordBase offset,
short val)
Writes the memory at address
(this + offset) . |
void |
writeShort(WordBase offset,
short val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeWord(int offset,
WordBase val)
Writes the memory at address
(this + offset) . |
void |
writeWord(int offset,
WordBase val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
void |
writeWord(WordBase offset,
WordBase val)
Writes the memory at address
(this + offset) . |
void |
writeWord(WordBase offset,
WordBase val,
LocationIdentity locationIdentity)
Writes the memory at address
(this + offset) . |
aboveOrEqual, aboveOrEqual, aboveThan, aboveThan, belowOrEqual, belowOrEqual, belowThan, belowThan, equal, equal, multiply, multiply, not, notEqual, notEqual, shiftLeft, shiftLeft, unsignedDivide, unsignedDivide, unsignedRemainder, unsignedRemainder, unsignedShiftRight, unsignedShiftRight, xor, xor
equal, notEqual
Object toObject()
byte readByte(WordBase offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readchar readChar(WordBase offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readshort readShort(WordBase offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readint readInt(WordBase offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readlong readLong(WordBase offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readfloat readFloat(WordBase offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readdouble readDouble(WordBase offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readWord readWord(WordBase offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readObject readObject(WordBase offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readbyte readByte(int offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readchar readChar(int offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readshort readShort(int offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readint readInt(int offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readlong readLong(int offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readfloat readFloat(int offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readdouble readDouble(int offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readWord readWord(int offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readObject readObject(int offset, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the readvoid writeByte(WordBase offset, byte val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeChar(WordBase offset, char val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeShort(WordBase offset, short val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeInt(WordBase offset, int val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeLong(WordBase offset, long val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeFloat(WordBase offset, float val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeDouble(WordBase offset, double val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeWord(WordBase offset, WordBase val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid initializeLong(WordBase offset, long val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset
are in bytes. The memory must be uninitialized or zero prior to this operation.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeObject(WordBase offset, Object val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeByte(int offset, byte val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeChar(int offset, char val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeShort(int offset, short val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeInt(int offset, int val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeLong(int offset, long val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeFloat(int offset, float val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeDouble(int offset, double val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeWord(int offset, WordBase val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid initializeLong(int offset, long val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset
are in bytes. The memory must be uninitialized or zero prior to this operation.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memoryvoid writeObject(int offset, Object val, LocationIdentity locationIdentity)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslocationIdentity
- the identity of the writeval
- the value to be written to memorybyte readByte(WordBase offset)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesschar readChar(WordBase offset)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessshort readShort(WordBase offset)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessint readInt(WordBase offset)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accesslong readLong(WordBase offset)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessfloat readFloat(WordBase offset)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessdouble readDouble(WordBase offset)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessWord readWord(WordBase offset)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessObject readObject(WordBase offset)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessObject readObject(WordBase offset, HeapAccess.BarrierType barrierType)
(this + offset)
. This access will decompress the oop if
the VM uses compressed oops, and it can be parameterized to allow read barriers (G1 referent
field).
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessbarrierType
- the type of the read barrier to be addedbyte readByte(int offset)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesschar readChar(int offset)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessshort readShort(int offset)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessint readInt(int offset)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accesslong readLong(int offset)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessfloat readFloat(int offset)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessdouble readDouble(int offset)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessWord readWord(int offset)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessObject readObject(int offset)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessObject readObject(int offset, HeapAccess.BarrierType barrierType)
(this + offset)
. This access will decompress the oop if
the VM uses compressed oops, and it can be parameterized to allow read barriers (G1 referent
field).offset
- the signed offset for the memory accessbarrierType
- the type of the read barrier to be addedvoid writeByte(WordBase offset, byte val)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeChar(WordBase offset, char val)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeShort(WordBase offset, short val)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeInt(WordBase offset, int val)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeLong(WordBase offset, long val)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeFloat(WordBase offset, float val)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeDouble(WordBase offset, double val)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeWord(WordBase offset, WordBase val)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeObject(WordBase offset, Object val)
(this + offset)
. Both the base address and offset are in
bytes.
The offset is always treated as a Signed
value. However, the static type is
WordBase
to avoid the frequent casts to of Unsigned
values (where the caller
knows that the highest-order bit of the unsigned value is never used).
offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeByte(int offset, byte val)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeChar(int offset, char val)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeShort(int offset, short val)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeInt(int offset, int val)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeLong(int offset, long val)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeFloat(int offset, float val)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeDouble(int offset, double val)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeWord(int offset, WordBase val)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessval
- the value to be written to memoryvoid writeObject(int offset, Object val)
(this + offset)
. Both the base address and offset are in
bytes.offset
- the signed offset for the memory accessval
- the value to be written to memoryPointer add(Unsigned val)
Unsigned
(this + val)
.Pointer add(int val)
Unsigned
(this + val)
.
Note that the right operand is a signed value, while the operation is performed unsigned. Therefore, the result is only well-defined for positive right operands.
Pointer subtract(Unsigned val)
Unsigned
(this - val)
.Pointer subtract(int val)
Unsigned
(this - val)
.
Note that the right operand is a signed value, while the operation is performed unsigned. Therefore, the result is only well-defined for positive right operands.
Pointer and(Unsigned val)
Unsigned
(this & val)
.Pointer and(int val)
Unsigned
(this & val)
.
Note that the right operand is a signed value, while the operation is performed unsigned. Therefore, the result is only well-defined for positive right operands.
Pointer or(Unsigned val)
Unsigned
(this | val)
.