equal
deleted
inserted
replaced
43 assert(!oopDesc::is_null(*p), "expected non-null object"); |
43 assert(!oopDesc::is_null(*p), "expected non-null object"); |
44 oop obj = oopDesc::load_decode_heap_oop_not_null(p); |
44 oop obj = oopDesc::load_decode_heap_oop_not_null(p); |
45 // If p points to a younger generation, mark the card. |
45 // If p points to a younger generation, mark the card. |
46 if ((HeapWord*)obj < _gen_boundary) { |
46 if ((HeapWord*)obj < _gen_boundary) { |
47 _rs->inline_write_ref_field_gc(p, obj); |
47 _rs->inline_write_ref_field_gc(p, obj); |
|
48 } |
|
49 } |
|
50 |
|
51 inline void OopsInGenClosure::par_do_barrier(oop* p) { |
|
52 assert(generation()->is_in_reserved(p), "expected ref in generation"); |
|
53 oop obj = *p; |
|
54 assert(obj != NULL, "expected non-null object"); |
|
55 // If p points to a younger generation, mark the card. |
|
56 if ((HeapWord*)obj < gen_boundary()) { |
|
57 rs()->write_ref_field_gc_par(p, obj); |
48 } |
58 } |
49 } |
59 } |
50 |
60 |
51 // NOTE! Any changes made here should also be made |
61 // NOTE! Any changes made here should also be made |
52 // in FastScanClosure::do_oop_work() |
62 // in FastScanClosure::do_oop_work() |