src/share/vm/gc_implementation/concurrentMarkSweep/cmsOopClosures.hpp

Print this page

        

*** 120,129 **** --- 120,147 ---- Prefetch::style prefetch_style() { return Prefetch::do_read; } }; + class Par_MarkRefsIntoClosure: public OopsInGenClosure { + private: + const MemRegion _span; + CMSBitMap* _bitMap; + protected: + DO_OOP_WORK_DEFN + public: + Par_MarkRefsIntoClosure(MemRegion span, CMSBitMap* bitMap); + virtual void do_oop(oop* p); + virtual void do_oop(narrowOop* p); + inline void do_oop_nv(oop* p) { Par_MarkRefsIntoClosure::do_oop_work(p); } + inline void do_oop_nv(narrowOop* p) { Par_MarkRefsIntoClosure::do_oop_work(p); } + bool do_header() { return true; } + Prefetch::style prefetch_style() { + return Prefetch::do_read; + } + }; + // A variant of the above used in certain kinds of CMS // marking verification. class MarkRefsIntoVerifyClosure: public CMSOopsInGenClosure { private: const MemRegion _span;