mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-21 11:34:38 +02:00
6700789: G1: Enable use of compressed oops with G1 heaps
Modifications to G1 so as to allow the use of compressed oops. Reviewed-by: apetrusenko, coleenp, jmasa, kvn, never, phh, tonyp
This commit is contained in:
parent
50d7db1805
commit
075c1335cb
58 changed files with 1233 additions and 1175 deletions
|
@ -43,6 +43,18 @@ void ObjPtrQueue::apply_closure_to_buffer(ObjectClosure* cl,
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef ASSERT
|
||||
void ObjPtrQueue::verify_oops_in_buffer() {
|
||||
if (_buf == NULL) return;
|
||||
for (size_t i = _index; i < _sz; i += oopSize) {
|
||||
oop obj = (oop)_buf[byte_index_to_index((int)i)];
|
||||
assert(obj != NULL && obj->is_oop(true /* ignore mark word */),
|
||||
"Not an oop");
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER // the use of 'this' below gets a warning, make it go away
|
||||
#pragma warning( disable:4355 ) // 'this' : used in base member initializer list
|
||||
#endif // _MSC_VER
|
||||
|
@ -66,6 +78,7 @@ void SATBMarkQueueSet::initialize(Monitor* cbl_mon, Mutex* fl_lock,
|
|||
|
||||
|
||||
void SATBMarkQueueSet::handle_zero_index_for_thread(JavaThread* t) {
|
||||
DEBUG_ONLY(t->satb_mark_queue().verify_oops_in_buffer();)
|
||||
t->satb_mark_queue().handle_zero_index();
|
||||
}
|
||||
|
||||
|
@ -143,7 +156,7 @@ void SATBMarkQueueSet::abandon_partial_marking() {
|
|||
}
|
||||
_completed_buffers_tail = NULL;
|
||||
_n_completed_buffers = 0;
|
||||
debug_only(assert_completed_buffer_list_len_correct_locked());
|
||||
DEBUG_ONLY(assert_completed_buffer_list_len_correct_locked());
|
||||
}
|
||||
while (buffers_to_delete != NULL) {
|
||||
CompletedBufferNode* nd = buffers_to_delete;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue