< prev index next >
src/share/vm/gc/parallel/cardTableExtension.cpp
Print this page
*** 502,519 ****
MemRegion(min_prev_start, cur_committed.end());
cur_committed = new_committed;
}
#ifdef ASSERT
ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
! assert(cur_committed.start() == align_ptr_up(cur_committed.start(), os::vm_page_size()),
"Starts should have proper alignment");
#endif
jbyte* new_start = byte_for(new_region.start());
// Round down because this is for the start address
HeapWord* new_start_aligned =
! (HeapWord*)align_size_down((uintptr_t)new_start, os::vm_page_size());
// The guard page is always committed and should not be committed over.
// This method is used in cases where the generation is growing toward
// lower addresses but the guard region is still at the end of the
// card table. That still makes sense when looking for writes
// off the end of the card table.
--- 502,519 ----
MemRegion(min_prev_start, cur_committed.end());
cur_committed = new_committed;
}
#ifdef ASSERT
ParallelScavengeHeap* heap = ParallelScavengeHeap::heap();
! assert(cur_committed.start() == align_up(cur_committed.start(), os::vm_page_size()),
"Starts should have proper alignment");
#endif
jbyte* new_start = byte_for(new_region.start());
// Round down because this is for the start address
HeapWord* new_start_aligned =
! (HeapWord*)align_down((uintptr_t)new_start, os::vm_page_size());
// The guard page is always committed and should not be committed over.
// This method is used in cases where the generation is growing toward
// lower addresses but the guard region is still at the end of the
// card table. That still makes sense when looking for writes
// off the end of the card table.
*** 582,592 ****
MemRegion new_region) {
jbyte* new_start = byte_for(new_region.start());
// Set the new start of the committed region
HeapWord* new_start_aligned =
! (HeapWord*)align_ptr_down(new_start, os::vm_page_size());
MemRegion new_committed = MemRegion(new_start_aligned,
_committed[changed_region].end());
_committed[changed_region] = new_committed;
_committed[changed_region].set_start(new_start_aligned);
}
--- 582,592 ----
MemRegion new_region) {
jbyte* new_start = byte_for(new_region.start());
// Set the new start of the committed region
HeapWord* new_start_aligned =
! (HeapWord*)align_down(new_start, os::vm_page_size());
MemRegion new_committed = MemRegion(new_start_aligned,
_committed[changed_region].end());
_committed[changed_region] = new_committed;
_committed[changed_region].set_start(new_start_aligned);
}
< prev index next >