8243478: Shenandoah: avoid implicit worker_id = 0

Reviewed-by: shade
This commit is contained in:
Zhengyu Gu 2020-04-23 10:14:42 -04:00
parent 5bb821771e
commit 8db994854f
2 changed files with 8 additions and 8 deletions

View File

@ -1655,13 +1655,13 @@ public:
// vm_roots and weak_roots are OopStorage backed roots, concurrent iteration
// may race against OopStorage::release() calls.
ShenandoahEvacUpdateOopStorageRootsClosure cl;
_vm_roots.oops_do<ShenandoahEvacUpdateOopStorageRootsClosure>(&cl);
_vm_roots.oops_do<ShenandoahEvacUpdateOopStorageRootsClosure>(&cl, worker_id);
}
{
ShenandoahEvacuateUpdateRootsClosure<> cl;
CLDToOopClosure clds(&cl, ClassLoaderData::_claim_strong);
_cld_roots.cld_do(&clds);
_cld_roots.cld_do(&clds, worker_id);
}
{
@ -1811,7 +1811,7 @@ public:
// Applies ShenandoahIsCLDAlive closure to CLDs, native barrier will either NULL the
// CLD's holder or evacuate it.
ShenandoahIsCLDAliveClosure is_cld_alive;
_cld_roots.cld_do(&is_cld_alive);
_cld_roots.cld_do(&is_cld_alive, worker_id);
// Applies ShenandoahIsNMethodAliveClosure to registered nmethods.
// The closure calls nmethod->is_unloading(). The is_unloading

View File

@ -137,7 +137,7 @@ public:
ShenandoahWeakRoots();
template <typename Closure>
void oops_do(Closure* cl, uint worker_id = 0);
void oops_do(Closure* cl, uint worker_id);
};
template <>
@ -151,7 +151,7 @@ public:
ShenandoahWeakRoots();
template <typename Closure>
void oops_do(Closure* cl, uint worker_id = 0);
void oops_do(Closure* cl, uint worker_id);
template <typename IsAliveClosure, typename KeepAliveClosure>
void weak_oops_do(IsAliveClosure* is_alive, KeepAliveClosure* keep_alive, uint worker_id);
@ -167,7 +167,7 @@ public:
ShenandoahVMRoots();
template <typename T>
void oops_do(T* cl, uint worker_id = 0);
void oops_do(T* cl, uint worker_id);
};
class ShenandoahThreadRoots {
@ -214,8 +214,8 @@ public:
ShenandoahClassLoaderDataRoots();
~ShenandoahClassLoaderDataRoots();
void always_strong_cld_do(CLDClosure* clds, uint worker_id = 0);
void cld_do(CLDClosure* clds, uint worker_id = 0);
void always_strong_cld_do(CLDClosure* clds, uint worker_id);
void cld_do(CLDClosure* clds, uint worker_id);
};
class ShenandoahRootProcessor : public StackObj {