summaryrefslogtreecommitdiff
path: root/runtime/class_linker.cc
diff options
context:
space:
mode:
author Treehugger Robot <treehugger-gerrit@google.com> 2017-10-09 22:47:36 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2017-10-09 22:47:36 +0000
commit1e0730a34b09bd45075f1c258baffc7a58606307 (patch)
treea1ca6e13acb5cd152caac65ae8d180f3cc387c0f /runtime/class_linker.cc
parent85f8c70741eddf3360e9b022bb03e1f9334d7e2a (diff)
parent8f34abacb10936ab1ba87d8d8473c16d6ceddea8 (diff)
Merge "Move to interpreter if async-exceptions are pending."
Diffstat (limited to 'runtime/class_linker.cc')
-rw-r--r--runtime/class_linker.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/runtime/class_linker.cc b/runtime/class_linker.cc
index 8999e17cf1..0cc2622450 100644
--- a/runtime/class_linker.cc
+++ b/runtime/class_linker.cc
@@ -2866,6 +2866,11 @@ bool ClassLinker::ShouldUseInterpreterEntrypoint(ArtMethod* method, const void*
return true;
}
+ if (Thread::Current()->IsAsyncExceptionPending()) {
+ // Force use of interpreter to handle async-exceptions
+ return true;
+ }
+
if (runtime->IsJavaDebuggable()) {
// For simplicity, we ignore precompiled code and go to the interpreter
// assuming we don't already have jitted code.