< prev index next >

src/hotspot/share/gc/shared/cardGeneration.cpp

Print this page

        

*** 305,314 **** void CardGeneration::space_iterate(SpaceClosure* blk, bool usedOnly) { blk->do_space(space()); } ! void CardGeneration::younger_refs_iterate(OopsInGenClosure* blk, uint n_threads) { ! blk->set_generation(this); ! younger_refs_in_space_iterate(space(), blk, n_threads); ! blk->reset_generation(); } --- 305,319 ---- void CardGeneration::space_iterate(SpaceClosure* blk, bool usedOnly) { blk->do_space(space()); } ! void CardGeneration::younger_refs_iterate(OopIterateClosure* blk, uint n_threads) { ! // Apply "cl->do_oop" to (the address of) (exactly) all the ref fields in ! // "sp" that point into younger generations. ! // The iteration is only over objects allocated at the start of the ! // iterations; objects allocated as a result of applying the closure are ! // not included. ! ! HeapWord* gen_boundary = reserved().start(); ! _rs->younger_refs_in_space_iterate(space(), gen_boundary, blk, n_threads); }
< prev index next >