summaryrefslogtreecommitdiff
path: root/runtime/java_vm_ext.h
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/java_vm_ext.h')
-rw-r--r--runtime/java_vm_ext.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/runtime/java_vm_ext.h b/runtime/java_vm_ext.h
index c1fbdc0389..618f6faad5 100644
--- a/runtime/java_vm_ext.h
+++ b/runtime/java_vm_ext.h
@@ -149,6 +149,11 @@ class JavaVMExt : public JavaVM {
SHARED_REQUIRES(Locks::mutator_lock_)
REQUIRES(!weak_globals_lock_);
+ // Checks if the weak global ref has been cleared by the GC without decode (read barrier.)
+ bool IsWeakGlobalCleared(Thread* self, IndirectRef ref)
+ SHARED_REQUIRES(Locks::mutator_lock_)
+ REQUIRES(!weak_globals_lock_);
+
Mutex& WeakGlobalsLock() RETURN_CAPABILITY(weak_globals_lock_) {
return weak_globals_lock_;
}