< prev index next >

src/share/vm/gc/cms/parNewGeneration.cpp

Print this page
rev 13265 : [mq]: 8179387.patch

*** 21,30 **** --- 21,31 ---- * questions. * */ #include "precompiled.hpp" + #include "gc/cms/cmsHeap.hpp" #include "gc/cms/compactibleFreeListSpace.hpp" #include "gc/cms/concurrentMarkSweepGeneration.hpp" #include "gc/cms/parNewGeneration.inline.hpp" #include "gc/cms/parOopClosures.inline.hpp" #include "gc/serial/defNewGeneration.inline.hpp"
*** 802,812 **** _task.work(worker_id); } }; void ParNewRefProcTaskExecutor::execute(ProcessTask& task) { ! GenCollectedHeap* gch = GenCollectedHeap::heap(); WorkGang* workers = gch->workers(); assert(workers != NULL, "Need parallel worker threads."); _state_set.reset(workers->active_workers(), _young_gen.promotion_failed()); ParNewRefProcTaskProxy rp_task(task, _young_gen, _old_gen, _young_gen.reserved().end(), _state_set); --- 803,813 ---- _task.work(worker_id); } }; void ParNewRefProcTaskExecutor::execute(ProcessTask& task) { ! CMSHeap* gch = CMSHeap::heap(); WorkGang* workers = gch->workers(); assert(workers != NULL, "Need parallel worker threads."); _state_set.reset(workers->active_workers(), _young_gen.promotion_failed()); ParNewRefProcTaskProxy rp_task(task, _young_gen, _old_gen, _young_gen.reserved().end(), _state_set);
*** 814,824 **** _state_set.reset(0 /* bad value in debug if not reset */, _young_gen.promotion_failed()); } void ParNewRefProcTaskExecutor::execute(EnqueueTask& task) { ! GenCollectedHeap* gch = GenCollectedHeap::heap(); WorkGang* workers = gch->workers(); assert(workers != NULL, "Need parallel worker threads."); ParNewRefEnqueueTaskProxy enq_task(task); workers->run_task(&enq_task); } --- 815,825 ---- _state_set.reset(0 /* bad value in debug if not reset */, _young_gen.promotion_failed()); } void ParNewRefProcTaskExecutor::execute(EnqueueTask& task) { ! CMSHeap* gch = CMSHeap::heap(); WorkGang* workers = gch->workers(); assert(workers != NULL, "Need parallel worker threads."); ParNewRefEnqueueTaskProxy enq_task(task); workers->run_task(&enq_task); }
*** 881,891 **** bool clear_all_soft_refs, size_t size, bool is_tlab) { assert(full || size > 0, "otherwise we don't want to collect"); ! GenCollectedHeap* gch = GenCollectedHeap::heap(); _gc_timer->register_gc_start(); AdaptiveSizePolicy* size_policy = gch->gen_policy()->size_policy(); WorkGang* workers = gch->workers(); --- 882,892 ---- bool clear_all_soft_refs, size_t size, bool is_tlab) { assert(full || size > 0, "otherwise we don't want to collect"); ! CMSHeap* gch = CMSHeap::heap(); _gc_timer->register_gc_start(); AdaptiveSizePolicy* size_policy = gch->gen_policy()->size_policy(); WorkGang* workers = gch->workers();
*** 1058,1068 **** _gc_tracer.report_gc_end(_gc_timer->gc_end(), _gc_timer->time_partitions()); } size_t ParNewGeneration::desired_plab_sz() { ! return _plab_stats.desired_plab_sz(GenCollectedHeap::heap()->workers()->active_workers()); } static int sum; void ParNewGeneration::waste_some_time() { for (int i = 0; i < 100; i++) { --- 1059,1069 ---- _gc_tracer.report_gc_end(_gc_timer->gc_end(), _gc_timer->time_partitions()); } size_t ParNewGeneration::desired_plab_sz() { ! return _plab_stats.desired_plab_sz(CMSHeap::heap()->workers()->active_workers()); } static int sum; void ParNewGeneration::waste_some_time() { for (int i = 0; i < 100; i++) {
*** 1469,1473 **** --- 1470,1480 ---- } const char* ParNewGeneration::name() const { return "par new generation"; } + + void ParNewGeneration::restore_preserved_marks() { + SharedRestorePreservedMarksTaskExecutor task_executor(CMSHeap::heap()->workers()); + _preserved_marks_set.restore(&task_executor); + } +
< prev index next >