Added CheckSuspend and UpdateDebugger to interpreter loop.
Moved CheckSuspend so that the code doesn't need to be repeated in LLVM
as well.
Change-Id: I1073f82352593bf0d5f99b28d382e4687f3a0d90
diff --git a/src/compiler_llvm/runtime_support_llvm.cc b/src/compiler_llvm/runtime_support_llvm.cc
index 43d1a4c..28f9335 100644
--- a/src/compiler_llvm/runtime_support_llvm.cc
+++ b/src/compiler_llvm/runtime_support_llvm.cc
@@ -86,16 +86,7 @@
void art_test_suspend_from_code(Thread* thread)
SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) {
- for (;;) {
- if (thread->ReadFlag(kCheckpointRequest)) {
- thread->RunCheckpointFunction();
- thread->AtomicClearFlag(kCheckpointRequest);
- } else if (thread->ReadFlag(kSuspendRequest)) {
- thread->FullSuspendCheck();
- } else {
- break;
- }
- }
+ CheckSuspend(thread);
}
ShadowFrame* art_push_shadow_frame_from_code(Thread* thread, ShadowFrame* new_shadow_frame,