summaryrefslogtreecommitdiff
path: root/runtime/entrypoints/entrypoint_utils.h
diff options
context:
space:
mode:
author Santiago Aboy Solanes <solanes@google.com> 2022-03-08 16:43:54 +0000
committer Treehugger Robot <treehugger-gerrit@google.com> 2022-03-09 14:13:53 +0000
commit69a87e30730d0c6e6e5974fd2bd001f77fffed5e (patch)
treedd4ee9fddd6eb68b56c3a808ce26e0ddba9fe0fe /runtime/entrypoints/entrypoint_utils.h
parentcf414b24f4097593cb68da8e0dc52d956724b4fa (diff)
Revert^4 "Add bss support for inlining BCP DexFiles for single image"
This reverts commit 1849c3a875aab44d9bff45623ec076b0331302f8. Reason for revert: Relading after fix. It can be seen in PS 1..2 Bug: 154012332 Test: art/test/testrunner/testrunner.py --target --32 --optimizing Test: art/test/testrunner/testrunner.py --host --64 --optimizing Change-Id: I168572957363dd5ae1598279f2ecc8fb947a1fd5
Diffstat (limited to 'runtime/entrypoints/entrypoint_utils.h')
-rw-r--r--runtime/entrypoints/entrypoint_utils.h11
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