Class AbstractPointer
java.lang.Object
com.ibm.j9ddr.vm29.j9.DataType
com.ibm.j9ddr.vm29.pointer.AbstractPointer
- Direct Known Subclasses:
CorruptPointer
,Pointer
,StructurePointer
-
Field Summary
Fields declared in class com.ibm.j9ddr.vm29.j9.DataType
BITFIELD_FORMAT, pointerPackageName, process, SIZEOF_BOOL, structurePackageName
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionabstract AbstractPointer
add
(long count) abstract AbstractPointer
abstract AbstractPointer
addOffset
(long offset) abstract AbstractPointer
final boolean
allBitsIn
(long bitmask) boolean
anyBitsIn
(long bitmask) abstract DataType
at
(long index) abstract DataType
int
compare
(AbstractPointer pointer) boolean
long
protected static IProcess
protected char
getBaseCharAtOffset
(long offset) protected boolean
getBoolAtOffset
(long offset) protected byte
getByteAtOffset
(long offset) int
getBytesAtOffset
(long offset, byte[] data) protected double
getDoubleAtOffset
(long offset) protected float
getFloatAtOffset
(long offset) This method reads number of the bytes depending on the pointers' base size.protected IDATA
getIDATAAtOffset
(long offset) protected int
getIntAtOffset
(long offset) protected long
getLongAtOffset
(long offset) protected com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer
getObjectClassAtOffset
(long offset) protected com.ibm.j9ddr.vm29.pointer.generated.J9ObjectMonitorPointer
getObjectMonitorAtOffset
(long offset) protected com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer
getObjectReferenceAtOffset
(long offset) protected long
getPointerAtOffset
(long offset) protected short
getShortAtOffset
(long offset) protected UDATA
getUDATAAtOffset
(long offset) boolean
gt
(AbstractPointer pointer) boolean
gte
(AbstractPointer pointer) hexAt
(long index) This method returns the memory values at the given index.This method returns the memory values at the given index.boolean
isNull()
long
boolean
lt
(AbstractPointer pointer) boolean
lte
(AbstractPointer pointer) final long
boolean
notNull()
static void
protected abstract long
abstract AbstractPointer
sub
(long count) sub
(AbstractPointer pointer) abstract AbstractPointer
abstract AbstractPointer
subOffset
(long offset) abstract AbstractPointer
abstract AbstractPointer
untag()
abstract AbstractPointer
untag
(long tagBits) Methods declared in class com.ibm.j9ddr.vm29.j9.DataType
formatShortInteractive, getJ9RASPointer, getPointerPackageName, getProcess, getStructure, getStructure, getStructure, getStructurePackageName, init, setJ9RASPointer
-
Field Details
-
address
protected long address
-
-
Constructor Details
-
AbstractPointer
protected AbstractPointer(long address)
-
-
Method Details
-
add
-
add
-
addOffset
-
addOffset
-
sub
-
sub
-
subOffset
-
subOffset
-
untag
-
untag
-
allBitsIn
public final boolean allBitsIn(long bitmask) -
anyBitsIn
public boolean anyBitsIn(long bitmask) -
longValue
- Throws:
CorruptDataException
-
at
- Throws:
CorruptDataException
-
at
- Throws:
CorruptDataException
-
isNull
public boolean isNull() -
notNull
public boolean notNull() -
eq
-
getAddress
public long getAddress() -
nonNullAddress
- Throws:
NullPointerDereference
-
getHexAddress
-
hexAt
This method returns the memory values at the given index. For StructurePointer instance objects, UDATA.sizeof amount of bytes are read. Otherwise, amount of bytes to be read depend on the object type. For instance, if it is I16Pointer, then 2 bytes are read. Note that this method returns bytes as they appear in the memory. It ignores endian-ization. For instance I16 value 0xABCD lays in the memory as CDAB on Little Endian platforms. And this method returns for this I16Pointer 0xCDAB and does not reverse the bytes.- Parameters:
index
- Offset of the memory to be read.- Returns:
- String representation of the value at the given index.
- Throws:
CorruptDataException
-
hexAt
This method returns the memory values at the given index. For StructurePointer instance objects, UDATA.sizeof amount of bytes are read. Otherwise, amount of bytes to be read depend on the object type. For instance, if it is I16Pointer, then 2 bytes are read. Note that this method returns bytes as they appear in the memory. It ignores endian-ization. For instance I16 value 0xABCD lays in the memory as CDAB on Little Endian platforms. And this method returns for this I16Pointer 0xCDAB and does not reverse the bytes.- Parameters:
index
- Offset of the memory to be read.- Returns:
- String representation of the value at the given index.
- Throws:
CorruptDataException
-
getHexValue
This method reads number of the bytes depending on the pointers' base size. And if the platform is little endian, it reverses the bytes read and returns it as hex string. If the platform is big endian, then it returns the read bytes as it is as an hex string.- Returns:
- hex string of the value of this pointer points.
- Throws:
CorruptDataException
-
getAddressSpace
-
lt
-
lte
-
gt
-
gte
-
sub
-
sizeOfBaseType
protected abstract long sizeOfBaseType() -
compare
-
getPointerAtOffset
- Throws:
CorruptDataException
-
getIntAtOffset
- Throws:
CorruptDataException
-
getDoubleAtOffset
- Throws:
CorruptDataException
-
getFloatAtOffset
- Throws:
CorruptDataException
-
getBoolAtOffset
- Throws:
CorruptDataException
-
getUDATAAtOffset
- Throws:
CorruptDataException
-
getIDATAAtOffset
- Throws:
CorruptDataException
-
getShortAtOffset
- Throws:
CorruptDataException
-
getByteAtOffset
- Throws:
CorruptDataException
-
getBytesAtOffset
- Throws:
CorruptDataException
-
getBaseCharAtOffset
- Throws:
CorruptDataException
-
getLongAtOffset
- Throws:
CorruptDataException
-
getObjectReferenceAtOffset
protected com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointer getObjectReferenceAtOffset(long offset) throws CorruptDataException - Throws:
CorruptDataException
-
getObjectClassAtOffset
protected com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointer getObjectClassAtOffset(long offset) throws CorruptDataException - Throws:
CorruptDataException
-
getObjectMonitorAtOffset
protected com.ibm.j9ddr.vm29.pointer.generated.J9ObjectMonitorPointer getObjectMonitorAtOffset(long offset) throws CorruptDataException - Throws:
CorruptDataException
-
formatFullInteractive
- Returns:
- Full DDR-interactive formatting
-
getTargetName
-
reportClassCacheStats
public static void reportClassCacheStats()
-