< prev index next >
src/hotspot/share/prims/whitebox.cpp
Print this page
rev 60593 : 8252035: G1: Clean up G1CollectedHeap::*reserved* methods
Reviewed-by:
*** 501,515 ****
#if INCLUDE_G1GC || INCLUDE_PARALLELGC
WB_ENTRY(jlong, WB_DramReservedStart(JNIEnv* env, jobject o))
#if INCLUDE_G1GC
if (UseG1GC) {
G1CollectedHeap* g1h = G1CollectedHeap::heap();
if (g1h->is_heterogeneous_heap()) {
uint start_region = HeterogeneousHeapRegionManager::manager()->start_index_of_dram();
! return (jlong)(g1h->base() + start_region * HeapRegion::GrainBytes);
} else {
! return (jlong)g1h->base();
}
}
#endif // INCLUDE_G1GC
#if INCLUDE_PARALLELGC
if (UseParallelGC) {
--- 501,516 ----
#if INCLUDE_G1GC || INCLUDE_PARALLELGC
WB_ENTRY(jlong, WB_DramReservedStart(JNIEnv* env, jobject o))
#if INCLUDE_G1GC
if (UseG1GC) {
G1CollectedHeap* g1h = G1CollectedHeap::heap();
+ HeapWord* base = g1h->reserved().start();
if (g1h->is_heterogeneous_heap()) {
uint start_region = HeterogeneousHeapRegionManager::manager()->start_index_of_dram();
! return (jlong)(base + start_region * HeapRegion::GrainBytes);
} else {
! return (jlong)base;
}
}
#endif // INCLUDE_G1GC
#if INCLUDE_PARALLELGC
if (UseParallelGC) {
*** 527,541 ****
WB_ENTRY(jlong, WB_DramReservedEnd(JNIEnv* env, jobject o))
#if INCLUDE_G1GC
if (UseG1GC) {
G1CollectedHeap* g1h = G1CollectedHeap::heap();
if (g1h->is_heterogeneous_heap()) {
uint end_region = HeterogeneousHeapRegionManager::manager()->end_index_of_dram();
! return (jlong)(g1h->base() + (end_region + 1) * HeapRegion::GrainBytes - 1);
} else {
! return (jlong)g1h->base() + G1Arguments::heap_max_size_bytes();
}
}
#endif // INCLUDE_G1GC
#if INCLUDE_PARALLELGC
if (UseParallelGC) {
--- 528,543 ----
WB_ENTRY(jlong, WB_DramReservedEnd(JNIEnv* env, jobject o))
#if INCLUDE_G1GC
if (UseG1GC) {
G1CollectedHeap* g1h = G1CollectedHeap::heap();
+ HeapWord* base = g1h->reserved().start();
if (g1h->is_heterogeneous_heap()) {
uint end_region = HeterogeneousHeapRegionManager::manager()->end_index_of_dram();
! return (jlong)(base + (end_region + 1) * HeapRegion::GrainBytes - 1);
} else {
! return (jlong)base + G1Arguments::heap_max_size_bytes();
}
}
#endif // INCLUDE_G1GC
#if INCLUDE_PARALLELGC
if (UseParallelGC) {
*** 555,565 ****
#if INCLUDE_G1GC
if (UseG1GC) {
G1CollectedHeap* g1h = G1CollectedHeap::heap();
if (g1h->is_heterogeneous_heap()) {
uint start_region = HeterogeneousHeapRegionManager::manager()->start_index_of_nvdimm();
! return (jlong)(g1h->base() + start_region * HeapRegion::GrainBytes);
} else {
THROW_MSG_0(vmSymbols::java_lang_UnsupportedOperationException(), "WB_NvdimmReservedStart: Old gen is not allocated on NV-DIMM using AllocateOldGenAt flag");
}
}
#endif // INCLUDE_G1GC
--- 557,567 ----
#if INCLUDE_G1GC
if (UseG1GC) {
G1CollectedHeap* g1h = G1CollectedHeap::heap();
if (g1h->is_heterogeneous_heap()) {
uint start_region = HeterogeneousHeapRegionManager::manager()->start_index_of_nvdimm();
! return (jlong)(g1h->reserved().start() + start_region * HeapRegion::GrainBytes);
} else {
THROW_MSG_0(vmSymbols::java_lang_UnsupportedOperationException(), "WB_NvdimmReservedStart: Old gen is not allocated on NV-DIMM using AllocateOldGenAt flag");
}
}
#endif // INCLUDE_G1GC
*** 581,591 ****
#if INCLUDE_G1GC
if (UseG1GC) {
G1CollectedHeap* g1h = G1CollectedHeap::heap();
if (g1h->is_heterogeneous_heap()) {
uint end_region = HeterogeneousHeapRegionManager::manager()->start_index_of_nvdimm();
! return (jlong)(g1h->base() + (end_region + 1) * HeapRegion::GrainBytes - 1);
} else {
THROW_MSG_0(vmSymbols::java_lang_UnsupportedOperationException(), "WB_NvdimmReservedEnd: Old gen is not allocated on NV-DIMM using AllocateOldGenAt flag");
}
}
#endif // INCLUDE_G1GC
--- 583,593 ----
#if INCLUDE_G1GC
if (UseG1GC) {
G1CollectedHeap* g1h = G1CollectedHeap::heap();
if (g1h->is_heterogeneous_heap()) {
uint end_region = HeterogeneousHeapRegionManager::manager()->start_index_of_nvdimm();
! return (jlong)(g1h->reserved().start() + (end_region + 1) * HeapRegion::GrainBytes - 1);
} else {
THROW_MSG_0(vmSymbols::java_lang_UnsupportedOperationException(), "WB_NvdimmReservedEnd: Old gen is not allocated on NV-DIMM using AllocateOldGenAt flag");
}
}
#endif // INCLUDE_G1GC
< prev index next >