diff options
author | 2017-01-19 14:22:26 +0000 | |
---|---|---|
committer | 2017-01-26 10:37:58 +0000 | |
commit | 5b3c6c0fcca76d82a4c9acb03f7714457ae53dd9 (patch) | |
tree | e1678dcd577abb63391a0cfcbb27a69a0ac4e769 /runtime/entrypoints/entrypoint_utils.cc | |
parent | c9569731061e560cb56116255b00a49d6a5daeb8 (diff) |
Refactor code for unresolved field entrypoint.
- Do macro magic to avoid source code duplication.
- Do not fetch the referrer from the assembly, but
from the C entrypoint instead.
Test: test-art-host test-art-target
Change-Id: Ib139c94bc8f74686640cad538ba75dc56fa00e1d
Diffstat (limited to 'runtime/entrypoints/entrypoint_utils.cc')
-rw-r--r-- | runtime/entrypoints/entrypoint_utils.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/runtime/entrypoints/entrypoint_utils.cc b/runtime/entrypoints/entrypoint_utils.cc index 25fd727968..06c11f5101 100644 --- a/runtime/entrypoints/entrypoint_utils.cc +++ b/runtime/entrypoints/entrypoint_utils.cc @@ -254,5 +254,10 @@ CallerAndOuterMethod GetCalleeSaveMethodCallerAndOuterMethod(Thread* self, return result; } +ArtMethod* GetCalleeSaveOuterMethod(Thread* self, Runtime::CalleeSaveType type) { + ScopedAssertNoThreadSuspension ants(__FUNCTION__); + ArtMethod** sp = self->GetManagedStack()->GetTopQuickFrame(); + return DoGetCalleeSaveMethodOuterCallerAndPc(sp, type).first; +} } // namespace art |