[deoptimizer] Support 'restart frame' in the deoptimizer
Doc: https://bit.ly/revive-restart-frame This CL implements support for the Debugger's "restart frame" functionality in the deoptimizer. When the debugger wants to restart a frame, we throw a termination exception. If the restarted frame is an optimized frame or was inlined into an optimized frame, the deoptimizer has to materialize all the frames up to (and including) the frame we want to restart. This is similar to materializing all the frames up until the frame with a catch handler. The main difference is that we do not jump into the middle of the top-most materialized frame, but instead use the RestartFrameTrampolone to immediatly exit, and then re-invoke the top-most materialized frame. R=jarin@chromium.org, tebbi@chromium.org Bug: chromium:1303521 Change-Id: I74ee412bc67f027be81fe56e529b5e5161e97153 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3616504Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/main@{#80462}
Showing
Please
register
or
sign in
to comment