I've two doubts regarding the garbage collection in Rotor. I've tried to look in the sources and the in Stutz's book but I didn't manage to figure them out.
1)The first part of the "copy_phase" promotes survivors in gen 0 to gen 1 (assuming 2 generations) by calling "copy_object_simple". This function copies the objects to gen 1 and UPDATES (?) the references. If so, why is it necessary the second part of "copy_phase" (calls to "get_copied_object" and "GCHeap::Relocate" to perform the relocation fix up. 2)What is the purpose of the scavenger_phase? I thank in advance. Best regards P. Felix
