java.lang.Object
com.ibm.j9ddr.vm29.j9.DataType
com.ibm.j9ddr.vm29.pointer.AbstractPointer
- Direct Known Subclasses:
CorruptPointer,Pointer,StructurePointer
-
Field Summary
FieldsFields declared in class com.ibm.j9ddr.vm29.j9.DataType
BITFIELD_FORMAT, pointerPackageName, process, SIZEOF_BOOL, structurePackageName -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract AbstractPointeradd(long count) abstract AbstractPointerabstract AbstractPointeraddOffset(long offset) abstract AbstractPointerfinal booleanallBitsIn(long bitmask) booleananyBitsIn(long bitmask) abstract DataTypeat(long index) abstract DataTypeintcompare(AbstractPointer pointer) booleanlongprotected static IProcessprotected chargetBaseCharAtOffset(long offset) protected booleangetBoolAtOffset(long offset) protected bytegetByteAtOffset(long offset) intgetBytesAtOffset(long offset, byte[] data) protected doublegetDoubleAtOffset(long offset) protected floatgetFloatAtOffset(long offset) This method reads number of the bytes depending on the pointers' base size.protected IDATAgetIDATAAtOffset(long offset) protected intgetIntAtOffset(long offset) protected longgetLongAtOffset(long offset) protected com.ibm.j9ddr.vm29.pointer.generated.J9ClassPointergetObjectClassAtOffset(long offset) protected com.ibm.j9ddr.vm29.pointer.generated.J9ObjectMonitorPointergetObjectMonitorAtOffset(long offset) protected com.ibm.j9ddr.vm29.pointer.generated.J9ObjectPointergetObjectReferenceAtOffset(long offset) protected longgetPointerAtOffset(long offset) protected shortgetShortAtOffset(long offset) protected UDATAgetUDATAAtOffset(long offset) booleangt(AbstractPointer pointer) booleangte(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.booleanisNull()longbooleanlt(AbstractPointer pointer) booleanlte(AbstractPointer pointer) final longbooleannotNull()static voidprotected abstract longabstract AbstractPointersub(long count) sub(AbstractPointer pointer) abstract AbstractPointerabstract AbstractPointersubOffset(long offset) abstract AbstractPointerabstract AbstractPointeruntag()abstract AbstractPointeruntag(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()
-