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

Print this page




 105 
 106   virtual void do_class_loader_data(ClassLoaderData* cld);
 107 };
 108 
 109 class MarkRefsIntoClosure: public CMSOopsInGenClosure {
 110  private:
 111   const MemRegion _span;
 112   CMSBitMap*      _bitMap;
 113  protected:
 114   DO_OOP_WORK_DEFN
 115  public:
 116   MarkRefsIntoClosure(MemRegion span, CMSBitMap* bitMap);
 117   virtual void do_oop(oop* p);
 118   virtual void do_oop(narrowOop* p);
 119 
 120   Prefetch::style prefetch_style() {
 121     return Prefetch::do_read;
 122   }
 123 };
 124 
















 125 // A variant of the above used in certain kinds of CMS
 126 // marking verification.
 127 class MarkRefsIntoVerifyClosure: public CMSOopsInGenClosure {
 128  private:
 129   const MemRegion _span;
 130   CMSBitMap*      _verification_bm;
 131   CMSBitMap*      _cms_bm;
 132  protected:
 133   DO_OOP_WORK_DEFN
 134  public:
 135   MarkRefsIntoVerifyClosure(MemRegion span, CMSBitMap* verification_bm,
 136                             CMSBitMap* cms_bm);
 137   virtual void do_oop(oop* p);
 138   virtual void do_oop(narrowOop* p);
 139 
 140   Prefetch::style prefetch_style() {
 141     return Prefetch::do_read;
 142   }
 143 };
 144 




 105 
 106   virtual void do_class_loader_data(ClassLoaderData* cld);
 107 };
 108 
 109 class MarkRefsIntoClosure: public CMSOopsInGenClosure {
 110  private:
 111   const MemRegion _span;
 112   CMSBitMap*      _bitMap;
 113  protected:
 114   DO_OOP_WORK_DEFN
 115  public:
 116   MarkRefsIntoClosure(MemRegion span, CMSBitMap* bitMap);
 117   virtual void do_oop(oop* p);
 118   virtual void do_oop(narrowOop* p);
 119 
 120   Prefetch::style prefetch_style() {
 121     return Prefetch::do_read;
 122   }
 123 };
 124 
 125 class Par_MarkRefsIntoClosure: public CMSOopsInGenClosure {
 126  private:
 127   const MemRegion _span;
 128   CMSBitMap*      _bitMap;
 129  protected:
 130   DO_OOP_WORK_DEFN
 131  public:
 132   Par_MarkRefsIntoClosure(MemRegion span, CMSBitMap* bitMap);
 133   virtual void do_oop(oop* p);
 134   virtual void do_oop(narrowOop* p);
 135 
 136   Prefetch::style prefetch_style() {
 137     return Prefetch::do_read;
 138   }
 139 };
 140 
 141 // A variant of the above used in certain kinds of CMS
 142 // marking verification.
 143 class MarkRefsIntoVerifyClosure: public CMSOopsInGenClosure {
 144  private:
 145   const MemRegion _span;
 146   CMSBitMap*      _verification_bm;
 147   CMSBitMap*      _cms_bm;
 148  protected:
 149   DO_OOP_WORK_DEFN
 150  public:
 151   MarkRefsIntoVerifyClosure(MemRegion span, CMSBitMap* verification_bm,
 152                             CMSBitMap* cms_bm);
 153   virtual void do_oop(oop* p);
 154   virtual void do_oop(narrowOop* p);
 155 
 156   Prefetch::style prefetch_style() {
 157     return Prefetch::do_read;
 158   }
 159 };
 160