diff options
Diffstat (limited to 'runtime/runtime.cc')
-rw-r--r-- | runtime/runtime.cc | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/runtime/runtime.cc b/runtime/runtime.cc index ca65c2bea3..6d849c446b 100644 --- a/runtime/runtime.cc +++ b/runtime/runtime.cc @@ -1761,10 +1761,10 @@ void Runtime::AllowNewSystemWeaks() { } } -void Runtime::BroadcastForNewSystemWeaks() { +void Runtime::BroadcastForNewSystemWeaks(bool broadcast_for_checkpoint) { // This is used for the read barrier case that uses the thread-local - // Thread::GetWeakRefAccessEnabled() flag. - CHECK(kUseReadBarrier); + // Thread::GetWeakRefAccessEnabled() flag and the checkpoint while weak ref access is disabled + // (see ThreadList::RunCheckpoint). monitor_list_->BroadcastForNewMonitors(); intern_table_->BroadcastForNewInterns(); java_vm_->BroadcastForNewWeakGlobals(); @@ -1772,7 +1772,7 @@ void Runtime::BroadcastForNewSystemWeaks() { // All other generic system-weak holders. for (gc::AbstractSystemWeakHolder* holder : system_weak_holders_) { - holder->Broadcast(); + holder->Broadcast(broadcast_for_checkpoint); } } |