summaryrefslogtreecommitdiff
path: root/runtime/gc/reference_processor.cc
diff options
context:
space:
mode:
author Android Build Coastguard Worker <android-build-coastguard-worker@google.com> 2025-01-24 18:02:00 -0800
committer Android Build Coastguard Worker <android-build-coastguard-worker@google.com> 2025-01-24 18:02:00 -0800
commitb0e55cccb49d459cbf63d8add1b60aa18fba52a2 (patch)
treef2db9d456ce877a4cf9a2ffdfc3844ff29e8846c /runtime/gc/reference_processor.cc
parent35f3a8a1c34cb233fee43885cf4626dfb45f6bbe (diff)
parentf3c480ffeb31af6c99858b5608ed610018062dae (diff)
Snap for 12969164 from f3c480ffeb31af6c99858b5608ed610018062dae to 25Q2-release
Change-Id: I2c4aabe02793d21090d9f1c9e3a04f3dd1933364
Diffstat (limited to 'runtime/gc/reference_processor.cc')
-rw-r--r--runtime/gc/reference_processor.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/runtime/gc/reference_processor.cc b/runtime/gc/reference_processor.cc
index 2621629bb8..6420fbbff6 100644
--- a/runtime/gc/reference_processor.cc
+++ b/runtime/gc/reference_processor.cc
@@ -54,8 +54,11 @@ ReferenceProcessor::ReferenceProcessor()
static inline MemberOffset GetSlowPathFlagOffset(ObjPtr<mirror::Class> reference_class)
REQUIRES_SHARED(Locks::mutator_lock_) {
DCHECK(reference_class == GetClassRoot<mirror::Reference>());
- ArtField* field = WellKnownClasses::java_lang_ref_Reference_slowPathEnabled;
+ // Don't use WellKnownClasses here as it may not be initialized at the point
+ // we're being called.
+ ArtField* field = reference_class->GetField(reference_class->NumFields() - 1);
DCHECK(field->IsStatic());
+ DCHECK_STREQ(field->GetName(), "slowPathEnabled");
return field->GetOffset();
}