mirror of
https://github.com/openjdk/jdk.git
synced 2026-05-10 13:39:30 +00:00
Merge
This commit is contained in:
commit
5e6c038292
@ -229,7 +229,7 @@ void ParGCAllocBufferWithBOT::retire(bool end_of_gc, bool retain) {
|
||||
HeapWord* first_card_start = _bsa->address_for_index(first_card_index);
|
||||
if (first_card_start < pre_top) {
|
||||
HeapWord* second_card_start =
|
||||
_bsa->address_for_index(first_card_index + 1);
|
||||
_bsa->inc_by_region_size(first_card_start);
|
||||
|
||||
// Ensure enough room to fill with the smallest block
|
||||
second_card_start = MAX2(second_card_start, pre_top + AlignmentReserve);
|
||||
|
||||
@ -199,6 +199,12 @@ public:
|
||||
// "index" in "_offset_array".
|
||||
HeapWord* address_for_index(size_t index) const;
|
||||
|
||||
// Return the address "p" incremented by the size of
|
||||
// a region. This method does not align the address
|
||||
// returned to the start of a region. It is a simple
|
||||
// primitive.
|
||||
HeapWord* inc_by_region_size(HeapWord* p) const { return p + N_words; }
|
||||
|
||||
// Shared space support
|
||||
void serialize(SerializeOopClosure* soc, HeapWord* start, HeapWord* end);
|
||||
};
|
||||
|
||||
@ -421,30 +421,6 @@ size_t CompactingPermGenGen::max_capacity() const {
|
||||
}
|
||||
|
||||
|
||||
|
||||
bool CompactingPermGenGen::grow_by(size_t bytes) {
|
||||
// Don't allow _virtual_size to expand into shared spaces.
|
||||
size_t max_bytes = _virtual_space.uncommitted_size() - _shared_space_size;
|
||||
if (bytes > _shared_space_size) {
|
||||
bytes = _shared_space_size;
|
||||
}
|
||||
return OneContigSpaceCardGeneration::grow_by(bytes);
|
||||
}
|
||||
|
||||
|
||||
bool CompactingPermGenGen::grow_to_reserved() {
|
||||
// Don't allow _virtual_size to expand into shared spaces.
|
||||
bool success = false;
|
||||
if (_virtual_space.uncommitted_size() > _shared_space_size) {
|
||||
size_t remaining_bytes =
|
||||
_virtual_space.uncommitted_size() - _shared_space_size;
|
||||
success = OneContigSpaceCardGeneration::grow_by(remaining_bytes);
|
||||
DEBUG_ONLY(if (!success) warning("grow to reserved failed");)
|
||||
}
|
||||
return success;
|
||||
}
|
||||
|
||||
|
||||
// No young generation references, clear this generation's main space's
|
||||
// card table entries. Do NOT clear the card table entries for the
|
||||
// read-only space (always clear) or the read-write space (valuable
|
||||
|
||||
@ -183,8 +183,6 @@ public:
|
||||
void compact();
|
||||
void post_compact();
|
||||
size_t contiguous_available() const;
|
||||
bool grow_by(size_t bytes);
|
||||
virtual bool grow_to_reserved();
|
||||
|
||||
void clear_remembered_set();
|
||||
void invalidate_remembered_set();
|
||||
|
||||
@ -1443,7 +1443,7 @@ class CommandLineFlags {
|
||||
"CMSPrecleanNumerator:CMSPrecleanDenominator yields convergence" \
|
||||
" ratio") \
|
||||
\
|
||||
product(bool, CMSPrecleanRefLists1, true, \
|
||||
product(bool, CMSPrecleanRefLists1, false, \
|
||||
"Preclean ref lists during (initial) preclean phase") \
|
||||
\
|
||||
product(bool, CMSPrecleanRefLists2, false, \
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user