summaryrefslogtreecommitdiffstats
path: root/runtime/thread.h
diff options
context:
space:
mode:
authorVladimir Marko <vmarko@google.com>2017-11-30 16:16:07 +0000
committerVladimir Marko <vmarko@google.com>2017-11-30 16:20:39 +0000
commit2196c651ecc77e49992c6c329dfce45f78ff46cb (patch)
tree4eb151632fc7b851101b4264286ce5e900fa06b5 /runtime/thread.h
parentdc93cac66f1db225474cec5bf0350fd7a148085e (diff)
downloadart-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.h9
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 {