src/hotspot/share/gc/cms/concurrentMarkSweepGeneration.hpp
changeset 51332 c25572739e7c
parent 51292 0538a5cdb474
child 53244 9807daeb47c4
equal deleted inserted replaced
51331:7939b3c4e408 51332:c25572739e7c
  1450                             CompactibleFreeListSpace* space,
  1450                             CompactibleFreeListSpace* space,
  1451                             CMSBitMap* bit_map,
  1451                             CMSBitMap* bit_map,
  1452                             CMSMarkStack* mark_stack,
  1452                             CMSMarkStack* mark_stack,
  1453                             MarkRefsIntoAndScanClosure* cl):
  1453                             MarkRefsIntoAndScanClosure* cl):
  1454     _space(space),
  1454     _space(space),
  1455     _num_dirty_cards(0),
       
  1456     _scan_cl(collector, span, collector->ref_processor(), bit_map,
  1455     _scan_cl(collector, span, collector->ref_processor(), bit_map,
  1457                  mark_stack, cl) { }
  1456                  mark_stack, cl),
       
  1457     _num_dirty_cards(0) { }
  1458 
  1458 
  1459   MarkFromDirtyCardsClosure(CMSCollector* collector,
  1459   MarkFromDirtyCardsClosure(CMSCollector* collector,
  1460                             MemRegion span,
  1460                             MemRegion span,
  1461                             CompactibleFreeListSpace* space,
  1461                             CompactibleFreeListSpace* space,
  1462                             CMSBitMap* bit_map,
  1462                             CMSBitMap* bit_map,
  1463                             OopTaskQueue* work_queue,
  1463                             OopTaskQueue* work_queue,
  1464                             ParMarkRefsIntoAndScanClosure* cl):
  1464                             ParMarkRefsIntoAndScanClosure* cl):
  1465     _space(space),
  1465     _space(space),
  1466     _num_dirty_cards(0),
       
  1467     _scan_cl(collector, span, collector->ref_processor(), bit_map,
  1466     _scan_cl(collector, span, collector->ref_processor(), bit_map,
  1468              work_queue, cl) { }
  1467              work_queue, cl),
       
  1468     _num_dirty_cards(0) { }
  1469 
  1469 
  1470   void do_MemRegion(MemRegion mr);
  1470   void do_MemRegion(MemRegion mr);
  1471   void set_space(CompactibleFreeListSpace* space) { _space = space; }
  1471   void set_space(CompactibleFreeListSpace* space) { _space = space; }
  1472   size_t num_dirty_cards() { return _num_dirty_cards; }
  1472   size_t num_dirty_cards() { return _num_dirty_cards; }
  1473 };
  1473 };
  1705                       CMSBitMap* bit_map, CMSMarkStack* mark_stack,
  1705                       CMSBitMap* bit_map, CMSMarkStack* mark_stack,
  1706                       CMSKeepAliveClosure* keep_alive,
  1706                       CMSKeepAliveClosure* keep_alive,
  1707                       bool cpc):
  1707                       bool cpc):
  1708     _collector(collector),
  1708     _collector(collector),
  1709     _span(span),
  1709     _span(span),
       
  1710     _mark_stack(mark_stack),
  1710     _bit_map(bit_map),
  1711     _bit_map(bit_map),
  1711     _mark_stack(mark_stack),
       
  1712     _keep_alive(keep_alive),
  1712     _keep_alive(keep_alive),
  1713     _concurrent_precleaning(cpc) {
  1713     _concurrent_precleaning(cpc) {
  1714     assert(_concurrent_precleaning == _keep_alive->concurrent_precleaning(),
  1714     assert(_concurrent_precleaning == _keep_alive->concurrent_precleaning(),
  1715            "Mismatch");
  1715            "Mismatch");
  1716   }
  1716   }
  1730   CMSParDrainMarkingStackClosure(CMSCollector* collector,
  1730   CMSParDrainMarkingStackClosure(CMSCollector* collector,
  1731                                  MemRegion span, CMSBitMap* bit_map,
  1731                                  MemRegion span, CMSBitMap* bit_map,
  1732                                  OopTaskQueue* work_queue):
  1732                                  OopTaskQueue* work_queue):
  1733     _collector(collector),
  1733     _collector(collector),
  1734     _span(span),
  1734     _span(span),
       
  1735     _work_queue(work_queue),
  1735     _bit_map(bit_map),
  1736     _bit_map(bit_map),
  1736     _work_queue(work_queue),
       
  1737     _mark_and_push(collector, span, bit_map, work_queue) { }
  1737     _mark_and_push(collector, span, bit_map, work_queue) { }
  1738 
  1738 
  1739  public:
  1739  public:
  1740   void trim_queue(uint max);
  1740   void trim_queue(uint max);
  1741   void do_void();
  1741   void do_void();