< prev index next >
src/hotspot/share/gc/g1/heapRegion.hpp
Print this page
rev 57223 : imported patch 8225484-changes-to-survivor-calculation
@@ -242,10 +242,12 @@
_next_marked_bytes == 0,
"Must be called after zero_marked_bytes.");
_prev_top_at_mark_start = _next_top_at_mark_start = bottom();
}
+ size_t _survivor_bytes; // Bytes in this region survived from previous GC.
+
// Data for young region survivor prediction.
uint _young_index_in_cset;
G1SurvRateGroup* _surv_rate_group;
int _age_index;
@@ -412,10 +414,18 @@
// space to be shared by JVM instances.
bool is_archive() const { return _type.is_archive(); }
bool is_open_archive() const { return _type.is_open_archive(); }
bool is_closed_archive() const { return _type.is_closed_archive(); }
+ void set_survivor_bytes(size_t bytes) {
+ assert(is_survivor(), "pre-condition");
+ assert(bytes <= used(), "Survivor bytes " SIZE_FORMAT " larger than used() " SIZE_FORMAT, bytes, used());
+ _survivor_bytes = bytes;
+ }
+
+ size_t survivor_bytes() const { return _survivor_bytes; }
+
void set_free();
void set_eden();
void set_eden_pre_gc();
void set_survivor();
@@ -531,11 +541,11 @@
uint young_index_in_cset() const { return _young_index_in_cset; }
void clear_young_index_in_cset() { _young_index_in_cset = 0; }
void set_young_index_in_cset(uint index) {
assert(index != UINT_MAX, "just checking");
assert(index != 0, "just checking");
- assert(is_young(), "pre-condition");
+ assert(is_eden(), "pre-condition" );
_young_index_in_cset = index;
}
int age_in_surv_rate_group() const;
bool has_valid_age_in_surv_rate() const;
< prev index next >