diff options
| author | 2025-01-24 03:11:31 -0800 | |
|---|---|---|
| committer | 2025-01-24 03:11:31 -0800 | |
| commit | 80ae40bdd8c61e07747b6418255396592d9771b4 (patch) | |
| tree | 8312863bc33e6d6ab3924e14aba27d0f75aa3a25 | |
| parent | cb741a2e2faf450bc440f33555be843bc69e827a (diff) | |
| parent | e3a6183e1b02f09da7f2292620c79ac90b551935 (diff) | |
Don't use WellKnownClasses in ReferenceProcessor's GetSlowPathFlagOffset. am: ff0184c6af am: e3a6183e1b
Original change: https://android-review.googlesource.com/c/platform/art/+/3463424
Change-Id: Ifef6ab7a67d43beef24915f53b0862b0a0118d70
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
| -rw-r--r-- | runtime/gc/reference_processor.cc | 5 |
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(); } |