mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-27 06:45:07 +02:00
8038423: G1: Decommit memory within heap
Allow G1 to decommit memory of arbitrary regions within the heap and their associated auxiliary data structures card table, BOT, hot card cache, and mark bitmaps. Reviewed-by: mgerdin, brutisso, jwilhelm
This commit is contained in:
parent
2617d54723
commit
100e51a339
32 changed files with 1322 additions and 579 deletions
|
@ -540,6 +540,12 @@ G1UpdateRSOrPushRefOopClosure(G1CollectedHeap* g1h,
|
|||
|
||||
bool G1RemSet::refine_card(jbyte* card_ptr, uint worker_i,
|
||||
bool check_for_refs_into_cset) {
|
||||
assert(_g1->is_in_exact(_ct_bs->addr_for(card_ptr)),
|
||||
err_msg("Card at "PTR_FORMAT" index "SIZE_FORMAT" representing heap at "PTR_FORMAT" (%u) must be in committed heap",
|
||||
p2i(card_ptr),
|
||||
_ct_bs->index_for(_ct_bs->addr_for(card_ptr)),
|
||||
_ct_bs->addr_for(card_ptr),
|
||||
_g1->addr_to_region(_ct_bs->addr_for(card_ptr))));
|
||||
|
||||
// If the card is no longer dirty, nothing to do.
|
||||
if (*card_ptr != CardTableModRefBS::dirty_card_val()) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue