equal
deleted
inserted
replaced
38 } else { |
38 } else { |
39 write_ref_field_pre_work(field, new_val); |
39 write_ref_field_pre_work(field, new_val); |
40 } |
40 } |
41 } |
41 } |
42 |
42 |
43 void BarrierSet::write_ref_field(void* field, oop new_val) { |
43 void BarrierSet::write_ref_field(void* field, oop new_val, bool release) { |
44 if (kind() == CardTableModRef) { |
44 if (kind() == CardTableModRef) { |
45 ((CardTableModRefBS*)this)->inline_write_ref_field(field, new_val); |
45 ((CardTableModRefBS*)this)->inline_write_ref_field(field, new_val, release); |
46 } else { |
46 } else { |
47 write_ref_field_work(field, new_val); |
47 write_ref_field_work(field, new_val, release); |
48 } |
48 } |
49 } |
49 } |
50 |
50 |
51 // count is number of array elements being written |
51 // count is number of array elements being written |
52 void BarrierSet::write_ref_array(HeapWord* start, size_t count) { |
52 void BarrierSet::write_ref_array(HeapWord* start, size_t count) { |