summaryrefslogtreecommitdiff
path: root/runtime/quick_exception_handler.h
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/quick_exception_handler.h')
-rw-r--r--runtime/quick_exception_handler.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/runtime/quick_exception_handler.h b/runtime/quick_exception_handler.h
index 559c3165ad..81c907ee0d 100644
--- a/runtime/quick_exception_handler.h
+++ b/runtime/quick_exception_handler.h
@@ -59,7 +59,10 @@ class QuickExceptionHandler {
// Deoptimize the stack to the upcall/some code that's not deoptimizeable. For
// every compiled frame, we create a "copy" shadow frame that will be executed
// with the interpreter.
- void DeoptimizeStack() REQUIRES_SHARED(Locks::mutator_lock_);
+ // skip_method_exit_callbacks specifies if we should skip method exit callbacks for the top frame.
+ // It is set if a deopt is needed after calling method exit callback for ex: if the callback
+ // throws or performs other actions that require a deopt.
+ void DeoptimizeStack(bool skip_method_exit_callbacks) REQUIRES_SHARED(Locks::mutator_lock_);
// Deoptimize a single frame. It's directly triggered from compiled code. It
// has the following properties: