104 // Card table entries are cleared before application; "blk" is |
104 // Card table entries are cleared before application; "blk" is |
105 // responsible for dirtying if the oop is still older-to-younger after |
105 // responsible for dirtying if the oop is still older-to-younger after |
106 // closure application. |
106 // closure application. |
107 void younger_refs_iterate(Generation* g, OopsInGenClosure* blk); |
107 void younger_refs_iterate(Generation* g, OopsInGenClosure* blk); |
108 |
108 |
109 void inline_write_ref_field_gc(oop* field, oop new_val) { |
109 void inline_write_ref_field_gc(void* field, oop new_val) { |
110 jbyte* byte = _ct_bs.byte_for(field); |
110 jbyte* byte = _ct_bs.byte_for(field); |
111 *byte = youngergen_card; |
111 *byte = youngergen_card; |
112 } |
112 } |
113 void write_ref_field_gc_work(oop* field, oop new_val) { |
113 void write_ref_field_gc_work(void* field, oop new_val) { |
114 inline_write_ref_field_gc(field, new_val); |
114 inline_write_ref_field_gc(field, new_val); |
115 } |
115 } |
116 |
116 |
117 // Override. Might want to devirtualize this in the same fashion as |
117 // Override. Might want to devirtualize this in the same fashion as |
118 // above. Ensures that the value of the card for field says that it's |
118 // above. Ensures that the value of the card for field says that it's |
119 // a younger card in the current collection. |
119 // a younger card in the current collection. |
120 virtual void write_ref_field_gc_par(oop* field, oop new_val); |
120 virtual void write_ref_field_gc_par(void* field, oop new_val); |
121 |
121 |
122 void resize_covered_region(MemRegion new_region); |
122 void resize_covered_region(MemRegion new_region); |
123 |
123 |
124 bool is_aligned(HeapWord* addr) { |
124 bool is_aligned(HeapWord* addr) { |
125 return _ct_bs.is_card_aligned(addr); |
125 return _ct_bs.is_card_aligned(addr); |