Lines Matching refs:reference

23 #include "mirror/reference-inl.h"
40 condition_("reference processor condition", *Locks::reference_processor_lock_) ,
63 mirror::Object* ReferenceProcessor::GetReferent(Thread* self, mirror::Reference* reference) {
68 mirror::Object* const referent = reference->GetReferent();
70 // scenario where it becomes non-null during the reference processing phase.
79 reference->GetReferentReferenceAddr();
96 (LIKELY(!reference->IsFinalizerReferenceInstance()) && reference->IsUnprocessed())) {
103 return reference->GetReferent();
118 // Process reference class instances and schedule finalizations.
170 // At this point all reference queues other than the cleared references should be empty.
178 // could result in a stale is_marked_callback_ being called before the reference processing
201 // scanning the same reference multiple times due to dirty cards.
211 LOG(FATAL) << "Invalid reference type " << PrettyClass(klass) << " " << std::hex
240 // When a runtime isn't started there are no reference queues to care about so ignore.
263 bool ReferenceProcessor::MakeCircularListIfUnenqueued(mirror::FinalizerReference* reference) {
266 // Wait untul we are done processing reference.
271 // At this point, since the sentinel of the reference is live, it is guaranteed to not be
273 // phase. Since we are holding the reference processor lock, it guarantees that reference
274 // processing can't begin. The GC could have just enqueued the reference one one of the internal
278 if (reference->IsUnprocessed()) {
279 CHECK(reference->IsFinalizerReferenceInstance());
280 reference->SetPendingNext(reference);