use of com.ibm.j9ddr.vm29.pointer.generated.J9MemorySegmentListPointer in project openj9 by eclipse.
the class DTFJContext method cacheJITMethodAddresses.
private static void cacheJITMethodAddresses() {
jitMethodCache = new HashMap<J9MethodPointer, List<J9JITExceptionTablePointer>>();
try {
J9MemorySegmentListPointer dataCacheList = getVm().jitConfig().dataCacheList();
J9MemorySegmentPointer dataCache = dataCacheList.nextSegment();
while (dataCache.notNull()) {
UDATA current = UDATA.cast(dataCache.heapBase());
UDATA end = UDATA.cast(dataCache.heapAlloc());
while (current.lt(end)) {
J9JITDataCacheHeaderPointer hdr = J9JITDataCacheHeaderPointer.cast(current);
if (hdr.type().longValue() == J9DataTypeExceptionInfo) {
J9JITExceptionTablePointer metaData = J9JITExceptionTablePointer.cast(current.add(J9JITDataCacheHeader.SIZEOF));
addMetaData(metaData);
}
current = current.add(hdr.size());
}
dataCache = dataCache.nextSegment();
}
} catch (CorruptDataException e) {
return;
}
}
Aggregations