605 void CollectedHeap::initialize_reserved_region(HeapWord *start, HeapWord *end) {
606 // It is important to do this in a way such that concurrent readers can't
607 // temporarily think something is in the heap. (Seen this happen in asserts.)
608 _reserved.set_word_size(0);
609 _reserved.set_start(start);
610 _reserved.set_end(end);
611 }
612 HeapWord* CollectedHeap::tlab_post_allocation_setup(HeapWord* obj) {
613 return obj;
614 }
615
616 uint CollectedHeap::oop_extra_words() {
617 // Default implementation doesn't need extra space for oops.
618 return 0;
619 }
620
621 void CollectedHeap::accumulate_statistics_all_gclabs() {
622 // Default implementation does nothing.
623 }
624
625 void CollectedHeap::deflate_idle_monitors_all_threads() {
626 ObjectSynchronizer::deflate_idle_monitors_all_threads();
627 }
628
629 class DeflateIdleMonitorsThreadClosure : public ThreadClosure {
630 public:
631 void do_thread(Thread* thread) {
632 ObjectSynchronizer::deflate_idle_monitors_and_oops_do(thread, NULL);
633 }
634 };
635
636 void CollectedHeap::parallel_deflate_idle_monitors(WorkGang* workers) {
637 StrongRootsScope(workers->active_workers());
638 DeflateIdleMonitorsThreadClosure cl;
639 Threads::parallel_java_threads_do(&cl);
640 }
641
642 #ifndef CC_INTERP
643 void CollectedHeap::compile_prepare_oop(MacroAssembler* masm, Register obj) {
644 // Default implementation does nothing.
645 }
646 #endif
|
605 void CollectedHeap::initialize_reserved_region(HeapWord *start, HeapWord *end) {
606 // It is important to do this in a way such that concurrent readers can't
607 // temporarily think something is in the heap. (Seen this happen in asserts.)
608 _reserved.set_word_size(0);
609 _reserved.set_start(start);
610 _reserved.set_end(end);
611 }
612 HeapWord* CollectedHeap::tlab_post_allocation_setup(HeapWord* obj) {
613 return obj;
614 }
615
616 uint CollectedHeap::oop_extra_words() {
617 // Default implementation doesn't need extra space for oops.
618 return 0;
619 }
620
621 void CollectedHeap::accumulate_statistics_all_gclabs() {
622 // Default implementation does nothing.
623 }
624
625 #ifndef CC_INTERP
626 void CollectedHeap::compile_prepare_oop(MacroAssembler* masm, Register obj) {
627 // Default implementation does nothing.
628 }
629 #endif
|