diff options
author | 2019-03-11 15:49:40 +0000 | |
---|---|---|
committer | 2019-03-11 21:59:44 +0000 | |
commit | a75e5892fba6d0208f33e9ab8e19e732daf94996 (patch) | |
tree | 3daff8c3ce1608bacba7358711ccf9bd61c0bb05 /runtime/thread.cc | |
parent | dd83a40a3c4fea0d917577de96742900a61ab548 (diff) |
Revert^2 "Remove Global deopt requirement for several jvmti events"
This reverts commit ad344b6a14feba90a06a205760e9bc766c56cab0.
Jit-on-first-use would cause the runtime to skip sending FramePop
events for exceptions in some circumstances due to longjmp-ing over
the frames. This requires forcing jit off from the first instant a
thread can get frame popped events, which is unfortunate.
Reason for revert: Fixed issue causing 1925 to fail on
jit-on-first-use and redefine-stress
Test: ./test.py --host
Test: ./art/test/testrunner/run_build_test_target.py -j50 art-jit-on-first-use
Change-Id: I6ec2a799db1041262a055be10e1af1faece6f2fc
Diffstat (limited to 'runtime/thread.cc')
-rw-r--r-- | runtime/thread.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/runtime/thread.cc b/runtime/thread.cc index 8890a30c10..526413bc2c 100644 --- a/runtime/thread.cc +++ b/runtime/thread.cc @@ -3571,7 +3571,7 @@ void Thread::QuickDeliverException() { } force_deopt = force_frame_pop || force_retry_instr; } - if (Dbg::IsForcedInterpreterNeededForException(this) || force_deopt) { + if (Dbg::IsForcedInterpreterNeededForException(this) || force_deopt || IsForceInterpreter()) { NthCallerVisitor visitor(this, 0, false); visitor.WalkStack(); if (Runtime::Current()->IsAsyncDeoptimizeable(visitor.caller_pc)) { |