Method entry / exit listeners don't need to force interpreter
Method entry / exit listeners used to install interpreter stubs because
of some inconsistencies with the way frame pop was working with
instrumentation stubs. We no longer use instrumentation stubs and hence
we can support method entry / exit listeners without forcing
interpreter.
The only additional change is to deopt when an exception is thrown if
method exit listeners are installed and non-standard exits are enabled.
We could potentially fix this too by checking if a deopt is needed after
each method unwind callback but it may not be worth the complexity
added.
Bug: 206029744
Test: art/test.py
Change-Id: I437d2aebc764182088826eadc9174a3b5f26215f
2 files changed