diff options
Diffstat (limited to 'runtime/entrypoints/entrypoint_utils.h')
-rw-r--r-- | runtime/entrypoints/entrypoint_utils.h | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/runtime/entrypoints/entrypoint_utils.h b/runtime/entrypoints/entrypoint_utils.h index 5faf387093..8b6fc69bea 100644 --- a/runtime/entrypoints/entrypoint_utils.h +++ b/runtime/entrypoints/entrypoint_utils.h @@ -213,9 +213,14 @@ bool NeedsClinitCheckBeforeCall(ArtMethod* method) REQUIRES_SHARED(Locks::mutato ObjPtr<mirror::Object> GetGenericJniSynchronizationObject(Thread* self, ArtMethod* called) REQUIRES_SHARED(Locks::mutator_lock_); -// Update .bss method entrypoint if the `callee_reference` has an associated oat file -// and that oat file has a .bss entry for the `callee_reference`. -void MaybeUpdateBssMethodEntry(ArtMethod* callee, MethodReference callee_reference); +// Update .bss method entrypoint if the `outer_method` has a valid OatFile, and either +// A) the `callee_reference` has the same OatFile as `outer_method`, or +// B) the `callee_reference` comes from a BCP DexFile that was present during `outer_method`'s +// OatFile compilation. +// In both cases, we require that the oat file has a .bss entry for the `callee_reference`. +void MaybeUpdateBssMethodEntry(ArtMethod* callee, + MethodReference callee_reference, + ArtMethod* outer_method) REQUIRES_SHARED(Locks::mutator_lock_); } // namespace art |