diff options
author | Vladimir Marko <vmarko@google.com> | 2017-11-30 16:16:07 +0000 |
---|---|---|
committer | Vladimir Marko <vmarko@google.com> | 2017-11-30 16:20:39 +0000 |
commit | 2196c651ecc77e49992c6c329dfce45f78ff46cb (patch) | |
tree | 4eb151632fc7b851101b4264286ce5e900fa06b5 /runtime/thread.h | |
parent | dc93cac66f1db225474cec5bf0350fd7a148085e (diff) | |
download | art-2196c651ecc77e49992c6c329dfce45f78ff46cb.tar.gz art-2196c651ecc77e49992c6c329dfce45f78ff46cb.tar.bz2 art-2196c651ecc77e49992c6c329dfce45f78ff46cb.zip |
Revert^4 "JIT JNI stubs."
The original CL,
https://android-review.googlesource.com/513417 ,
has a bug fixed in the Revert^2,
https://android-review.googlesource.com/550579 ,
and this Revert^4 adds two more fixes:
- fix obsolete native method getting interpreter
entrypoint in 980-redefine-object,
- fix random JIT GC flakiness in 667-jit-jni-stub.
Test: testrunner.py --host --prebuild --no-relocate \
--no-image --jit -t 980-redefine-object
Bug: 65574695
Bug: 69843562
This reverts commit 056d7756152bb3ced81dd57781be5028428ce2bd.
Change-Id: Ic778686168b90e29816fd526e23141dcbe5ea880
Diffstat (limited to 'runtime/thread.h')
-rw-r--r-- | runtime/thread.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/runtime/thread.h b/runtime/thread.h index 39be66d5c2..0803975d26 100644 --- a/runtime/thread.h +++ b/runtime/thread.h @@ -474,13 +474,16 @@ class Thread { tlsPtr_.managed_stack.SetTopQuickFrame(top_method); } + void SetTopOfStackTagged(ArtMethod** top_method) { + tlsPtr_.managed_stack.SetTopQuickFrameTagged(top_method); + } + void SetTopOfShadowStack(ShadowFrame* top) { tlsPtr_.managed_stack.SetTopShadowFrame(top); } bool HasManagedStack() const { - return (tlsPtr_.managed_stack.GetTopQuickFrame() != nullptr) || - (tlsPtr_.managed_stack.GetTopShadowFrame() != nullptr); + return tlsPtr_.managed_stack.HasTopQuickFrame() || tlsPtr_.managed_stack.HasTopShadowFrame(); } // If 'msg' is null, no detail message is set. @@ -833,7 +836,7 @@ class Thread { static ThreadOffset<pointer_size> TopOfManagedStackOffset() { return ThreadOffsetFromTlsPtr<pointer_size>( OFFSETOF_MEMBER(tls_ptr_sized_values, managed_stack) + - ManagedStack::TopQuickFrameOffset()); + ManagedStack::TaggedTopQuickFrameOffset()); } const ManagedStack* GetManagedStack() const { |