394 oop overflow_list() { return _overflow_list; }
395
396 // Push the given (from-space) object on the global overflow list.
397 void push_on_overflow_list(oop from_space_obj, ParScanThreadState* par_scan_state);
398
399 // If the global overflow list is non-empty, move some tasks from it
400 // onto "work_q" (which need not be empty). No more than 1/4 of the
401 // available space on "work_q" is used.
402 bool take_from_overflow_list(ParScanThreadState* par_scan_state);
403 bool take_from_overflow_list_work(ParScanThreadState* par_scan_state);
404
405 // The task queues to be used by parallel GC threads.
406 ObjToScanQueueSet* task_queues() {
407 return _task_queues;
408 }
409
410 PLABStats* plab_stats() {
411 return &_plab_stats;
412 }
413
414 size_t desired_plab_sz() {
415 return _plab_stats.desired_plab_sz();
416 }
417
418 const ParNewTracer* gc_tracer() const {
419 return &_gc_tracer;
420 }
421
422 static oop real_forwardee(oop obj);
423 };
424
425 #endif // SHARE_VM_GC_IMPLEMENTATION_PARNEW_PARNEWGENERATION_HPP
|
394 oop overflow_list() { return _overflow_list; }
395
396 // Push the given (from-space) object on the global overflow list.
397 void push_on_overflow_list(oop from_space_obj, ParScanThreadState* par_scan_state);
398
399 // If the global overflow list is non-empty, move some tasks from it
400 // onto "work_q" (which need not be empty). No more than 1/4 of the
401 // available space on "work_q" is used.
402 bool take_from_overflow_list(ParScanThreadState* par_scan_state);
403 bool take_from_overflow_list_work(ParScanThreadState* par_scan_state);
404
405 // The task queues to be used by parallel GC threads.
406 ObjToScanQueueSet* task_queues() {
407 return _task_queues;
408 }
409
410 PLABStats* plab_stats() {
411 return &_plab_stats;
412 }
413
414 size_t desired_plab_sz();
415
416 const ParNewTracer* gc_tracer() const {
417 return &_gc_tracer;
418 }
419
420 static oop real_forwardee(oop obj);
421 };
422
423 #endif // SHARE_VM_GC_IMPLEMENTATION_PARNEW_PARNEWGENERATION_HPP
|