< prev index next >

src/hotspot/share/gc/g1/g1SATBCardTableModRefBS.cpp

Print this page

        

*** 218,228 **** bool G1SATBCardTableModRefBS::is_in_young(oop obj) const { volatile jbyte* p = byte_for((void*)obj); return *p == g1_young_card_val(); } ! void G1SATBCardTableLoggingModRefBS::on_thread_create(JavaThread* thread) { // This method initializes the SATB and dirty card queues before a // JavaThread is added to the Java thread list. Right now, we don't // have to do anything to the dirty card queue (it should have been // activated when the thread was created), but we have to activate // the SATB queue if the thread is created while a marking cycle is --- 218,228 ---- bool G1SATBCardTableModRefBS::is_in_young(oop obj) const { volatile jbyte* p = byte_for((void*)obj); return *p == g1_young_card_val(); } ! void G1SATBCardTableLoggingModRefBS::on_thread_attach(JavaThread* thread) { // This method initializes the SATB and dirty card queues before a // JavaThread is added to the Java thread list. Right now, we don't // have to do anything to the dirty card queue (it should have been // activated when the thread was created), but we have to activate // the SATB queue if the thread is created while a marking cycle is
*** 248,258 **** if (thread->satb_mark_queue_set().is_active()) { thread->satb_mark_queue().set_active(true); } } ! void G1SATBCardTableLoggingModRefBS::on_thread_destroy(JavaThread* thread) { // Flush any deferred card marks, SATB buffers and dirty card queue buffers ! CardTableModRefBS::on_thread_destroy(thread); thread->satb_mark_queue().flush(); thread->dirty_card_queue().flush(); } --- 248,258 ---- if (thread->satb_mark_queue_set().is_active()) { thread->satb_mark_queue().set_active(true); } } ! void G1SATBCardTableLoggingModRefBS::on_thread_detach(JavaThread* thread) { // Flush any deferred card marks, SATB buffers and dirty card queue buffers ! CardTableModRefBS::on_thread_detach(thread); thread->satb_mark_queue().flush(); thread->dirty_card_queue().flush(); }
< prev index next >