diff options
| author | 2023-01-09 17:29:12 +0000 | |
|---|---|---|
| committer | 2023-01-11 15:34:31 +0000 | |
| commit | b76f55152345ad1d2813d7fe3f3e03e988ca7d5c (patch) | |
| tree | 6fab051dc6d37d511517f791a49b6238b9518049 /compiler/optimizing/builder.cc | |
| parent | 5f510ac3e95fd716f911bd884bc9f175297a383a (diff) | |
Check if we need a deopt after method entry / exit callbacks
We need to check if we need a deopt after method entry / exit callbacks.
We were using the proxy of IsDeoptimized(method) to check if we need a
deopt but that isn't sufficient always. For example, when there is a
frame pop request or other requests that don't explicitly deopt the
method.
Checking for a deopt after method exit callback requires special care
to avoid calling method exit callbacks again from the interpreter after
a deopt. We already have a mechanism to skip method exit listeners so it
just involves updating the shadow frame to skip method exit listeners.
Bug: 206029744
Test: art/test.py
Change-Id: Ib95ab4348e40de345583e0718617879300828cb7
Diffstat (limited to 'compiler/optimizing/builder.cc')
0 files changed, 0 insertions, 0 deletions