121 assert(Universe::heap()->is_gc_active(), "called outside gc"); |
121 assert(Universe::heap()->is_gc_active(), "called outside gc"); |
122 |
122 |
123 PSPromotionManager* pm = PSPromotionManager::gc_thread_promotion_manager(which); |
123 PSPromotionManager* pm = PSPromotionManager::gc_thread_promotion_manager(which); |
124 PSScavengeRootsClosure roots_closure(pm); |
124 PSScavengeRootsClosure roots_closure(pm); |
125 CLDClosure* roots_from_clds = NULL; // Not needed. All CLDs are already visited. |
125 CLDClosure* roots_from_clds = NULL; // Not needed. All CLDs are already visited. |
126 CodeBlobToOopClosure roots_in_blobs(&roots_closure, /*do_marking=*/ true); |
126 MarkingCodeBlobClosure roots_in_blobs(&roots_closure, CodeBlobToOopClosure::FixRelocations); |
127 |
127 |
128 if (_java_thread != NULL) |
128 if (_java_thread != NULL) |
129 _java_thread->oops_do(&roots_closure, roots_from_clds, &roots_in_blobs); |
129 _java_thread->oops_do(&roots_closure, roots_from_clds, &roots_in_blobs); |
130 |
130 |
131 if (_vm_thread != NULL) |
131 if (_vm_thread != NULL) |