This is in preparation of JDK-8270489 - Support archived heap objects in EpsilonGC.
We have the following function that's used ONLY in asserts and WhiteBox tests.
bool HeapShared::is_archived_object(oop p) {
return Universe::heap()->is_archived_object(p);
}
This function is used for two completely different purposes:
[1] During dump time, is "p" an object that's about to be written into the archived heap?
[2] During runtime, is "p" an object in an archive region?
To support archived objects in other types of GCs that do not support archive regions, we should refactor this code to distinguish between the two use cases. This will make the code easier to understand.
=========
[0] Remove HeapShared::is_archived_object()
[1] -> add new function HeapShared::is_archived_object_during_dumptime()
[2] -> rewrite the code to call Universe::heap()->is_archived_object(p) instead.
We have the following function that's used ONLY in asserts and WhiteBox tests.
bool HeapShared::is_archived_object(oop p) {
return Universe::heap()->is_archived_object(p);
}
This function is used for two completely different purposes:
[1] During dump time, is "p" an object that's about to be written into the archived heap?
[2] During runtime, is "p" an object in an archive region?
To support archived objects in other types of GCs that do not support archive regions, we should refactor this code to distinguish between the two use cases. This will make the code easier to understand.
=========
[0] Remove HeapShared::is_archived_object()
[1] -> add new function HeapShared::is_archived_object_during_dumptime()
[2] -> rewrite the code to call Universe::heap()->is_archived_object(p) instead.