< prev index next >

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

Print this page
rev 7807 : [mq]: bcast

*** 41,64 **** protected: enum G1CardValues { g1_young_gen = CT_MR_BS_last_reserved << 1 }; ! G1SATBCardTableModRefBS(MemRegion whole_heap, BarrierSet::Name kind); ~G1SATBCardTableModRefBS() { } public: static int g1_young_card_val() { return g1_young_gen; } // Add "pre_val" to a set of objects that may have been disconnected from the // pre-marking object graph. static void enqueue(oop pre_val); - bool is_a(BarrierSet::Name bsn) { - return bsn == BarrierSet::G1SATBCT || CardTableModRefBS::is_a(bsn); - } - virtual bool has_write_ref_pre_barrier() { return true; } // This notes that we don't need to access any BarrierSet data // structures, so this can be called from a static context. template <class T> static void write_ref_field_pre_static(T* field, oop newVal) { --- 41,60 ---- protected: enum G1CardValues { g1_young_gen = CT_MR_BS_last_reserved << 1 }; ! G1SATBCardTableModRefBS(MemRegion whole_heap, const BarrierSet::FakeRtti& fake_rtti); ~G1SATBCardTableModRefBS() { } public: static int g1_young_card_val() { return g1_young_gen; } // Add "pre_val" to a set of objects that may have been disconnected from the // pre-marking object graph. static void enqueue(oop pre_val); virtual bool has_write_ref_pre_barrier() { return true; } // This notes that we don't need to access any BarrierSet data // structures, so this can be called from a static context. template <class T> static void write_ref_field_pre_static(T* field, oop newVal) {
*** 126,135 **** --- 122,136 ---- jbyte val = _byte_map[card_index]; return (val & (clean_card_mask_val() | deferred_card_val())) == deferred_card_val(); } }; + template<> + struct BarrierSet::GetName<G1SATBCardTableModRefBS> { + static const BarrierSet::Name value = BarrierSet::G1SATBCT; + }; + class G1SATBCardTableLoggingModRefBSChangedListener : public G1MappingChangedListener { private: G1SATBCardTableLoggingModRefBS* _card_table; public: G1SATBCardTableLoggingModRefBSChangedListener() : _card_table(NULL) { }
*** 157,171 **** virtual void initialize() { } virtual void initialize(G1RegionToSpaceMapper* mapper); virtual void resize_covered_region(MemRegion new_region) { ShouldNotReachHere(); } - bool is_a(BarrierSet::Name bsn) { - return bsn == BarrierSet::G1SATBCTLogging || - G1SATBCardTableModRefBS::is_a(bsn); - } - void write_ref_field_work(void* field, oop new_val, bool release = false); // Can be called from static contexts. static void write_ref_field_static(void* field, oop new_val); --- 158,167 ----
*** 175,180 **** --- 171,181 ---- void write_region_work(MemRegion mr) { invalidate(mr); } void write_ref_array_work(MemRegion mr) { invalidate(mr); } }; + template<> + struct BarrierSet::GetName<G1SATBCardTableLoggingModRefBS> { + static const BarrierSet::Name value = BarrierSet::G1SATBCTLogging; + }; + #endif // SHARE_VM_GC_IMPLEMENTATION_G1_G1SATBCARDTABLEMODREFBS_HPP
< prev index next >