src/share/vm/gc_implementation/g1/g1RemSet.hpp

Print this page

        

*** 95,105 **** // partitioning the work to be done. It should be the same as // the "i" passed to the calling thread's work(i) function. // In the sequential case this param will be ignored. void oops_into_collection_set_do(OopsInHeapRegionClosure* blk, CodeBlobToOopClosure* code_root_cl, ! int worker_i); // Prepare for and cleanup after an oops_into_collection_set_do // call. Must call each of these once before and after (in sequential // code) any threads call oops_into_collection_set_do. (This offers an // opportunity to sequential setup and teardown of structures needed by a --- 95,105 ---- // partitioning the work to be done. It should be the same as // the "i" passed to the calling thread's work(i) function. // In the sequential case this param will be ignored. void oops_into_collection_set_do(OopsInHeapRegionClosure* blk, CodeBlobToOopClosure* code_root_cl, ! uint worker_i); // Prepare for and cleanup after an oops_into_collection_set_do // call. Must call each of these once before and after (in sequential // code) any threads call oops_into_collection_set_do. (This offers an // opportunity to sequential setup and teardown of structures needed by a
*** 107,119 **** void prepare_for_oops_into_collection_set_do(); void cleanup_after_oops_into_collection_set_do(); void scanRS(OopsInHeapRegionClosure* oc, CodeBlobToOopClosure* code_root_cl, ! int worker_i); ! void updateRS(DirtyCardQueue* into_cset_dcq, int worker_i); CardTableModRefBS* ct_bs() { return _ct_bs; } size_t cardsScanned() { return _total_cards_scanned; } // Record, if necessary, the fact that *p (where "p" is in region "from", --- 107,119 ---- void prepare_for_oops_into_collection_set_do(); void cleanup_after_oops_into_collection_set_do(); void scanRS(OopsInHeapRegionClosure* oc, CodeBlobToOopClosure* code_root_cl, ! uint worker_i); ! void updateRS(DirtyCardQueue* into_cset_dcq, uint worker_i); CardTableModRefBS* ct_bs() { return _ct_bs; } size_t cardsScanned() { return _total_cards_scanned; } // Record, if necessary, the fact that *p (where "p" is in region "from",
*** 136,146 **** // Refine the card corresponding to "card_ptr". // If check_for_refs_into_cset is true, a true result is returned // if the given card contains oops that have references into the // current collection set. virtual bool refine_card(jbyte* card_ptr, ! int worker_i, bool check_for_refs_into_cset); // Print accumulated summary info from the start of the VM. virtual void print_summary_info(); --- 136,146 ---- // Refine the card corresponding to "card_ptr". // If check_for_refs_into_cset is true, a true result is returned // if the given card contains oops that have references into the // current collection set. virtual bool refine_card(jbyte* card_ptr, ! uint worker_i, bool check_for_refs_into_cset); // Print accumulated summary info from the start of the VM. virtual void print_summary_info();
*** 169,184 **** }; class UpdateRSOopClosure: public ExtendedOopClosure { HeapRegion* _from; G1RemSet* _rs; ! int _worker_i; template <class T> void do_oop_work(T* p); public: ! UpdateRSOopClosure(G1RemSet* rs, int worker_i = 0) : _from(NULL), _rs(rs), _worker_i(worker_i) {} void set_from(HeapRegion* from) { assert(from != NULL, "from region must be non-NULL"); --- 169,184 ---- }; class UpdateRSOopClosure: public ExtendedOopClosure { HeapRegion* _from; G1RemSet* _rs; ! uint _worker_i; template <class T> void do_oop_work(T* p); public: ! UpdateRSOopClosure(G1RemSet* rs, uint worker_i = 0) : _from(NULL), _rs(rs), _worker_i(worker_i) {} void set_from(HeapRegion* from) { assert(from != NULL, "from region must be non-NULL");