< prev index next >

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

Print this page
rev 9847 : 8146395: Add inline qualifier in oop.hpp and fix inlining in gc files
Summary: Fix remaining issues after 8146401

*** 56,79 **** virtual bool has_write_ref_pre_barrier() { return true; } // We export this to make it available in cases where the static // type of the barrier set is known. Note that it is non-virtual. ! template <class T> inline void inline_write_ref_field_pre(T* field, oop newVal) { ! T heap_oop = oopDesc::load_heap_oop(field); ! if (!oopDesc::is_null(heap_oop)) { ! enqueue(oopDesc::decode_heap_oop(heap_oop)); ! } ! } // These are the more general virtual versions. ! virtual void write_ref_field_pre_work(oop* field, oop new_val) { ! inline_write_ref_field_pre(field, new_val); ! } ! virtual void write_ref_field_pre_work(narrowOop* field, oop new_val) { ! inline_write_ref_field_pre(field, new_val); ! } virtual void write_ref_field_pre_work(void* field, oop new_val) { guarantee(false, "Not needed"); } template <class T> void write_ref_array_pre_work(T* dst, int count); --- 56,70 ---- virtual bool has_write_ref_pre_barrier() { return true; } // We export this to make it available in cases where the static // type of the barrier set is known. Note that it is non-virtual. ! template <class T> inline void inline_write_ref_field_pre(T* field, oop newVal); // These are the more general virtual versions. ! inline virtual void write_ref_field_pre_work(oop* field, oop new_val); ! inline virtual void write_ref_field_pre_work(narrowOop* field, oop new_val); virtual void write_ref_field_pre_work(void* field, oop new_val) { guarantee(false, "Not needed"); } template <class T> void write_ref_array_pre_work(T* dst, int count);
*** 96,114 **** bool is_card_claimed(size_t card_index) { jbyte val = _byte_map[card_index]; return (val & (clean_card_mask_val() | claimed_card_val())) == claimed_card_val(); } ! void set_card_claimed(size_t card_index) { ! jbyte val = _byte_map[card_index]; ! if (val == clean_card_val()) { ! val = (jbyte)claimed_card_val(); ! } else { ! val |= (jbyte)claimed_card_val(); ! } ! _byte_map[card_index] = val; ! } void verify_g1_young_region(MemRegion mr) PRODUCT_RETURN; void g1_mark_as_young(const MemRegion& mr); bool mark_card_deferred(size_t card_index); --- 87,97 ---- bool is_card_claimed(size_t card_index) { jbyte val = _byte_map[card_index]; return (val & (clean_card_mask_val() | claimed_card_val())) == claimed_card_val(); } ! inline void set_card_claimed(size_t card_index); void verify_g1_young_region(MemRegion mr) PRODUCT_RETURN; void g1_mark_as_young(const MemRegion& mr); bool mark_card_deferred(size_t card_index);
< prev index next >