summaryrefslogtreecommitdiff
path: root/runtime/interpreter/interpreter.cc
diff options
context:
space:
mode:
author Mythri Alle <mythria@google.com> 2022-02-03 13:41:39 +0000
committer Mythri Alle <mythria@google.com> 2022-02-03 17:36:27 +0000
commit933367326d031cc0c301798c141c440e725e57d5 (patch)
treec8da99edd51c1fe393e64720cbed75a87dc07aa1 /runtime/interpreter/interpreter.cc
parent2362c5afc49288fb68c249a0b73941402bb24d4d (diff)
Fix DCHECK related to frame pop events.
We have a DCHECK that we can only see a retry instruction only on the second frame after deoptimization. Though we can only pop one frame at a time, the frame pop event listener can request more such events. So the expectation that we can see a forced pop only on the second frame isn't correct. Test: art/test.py Bug: 206029744 Change-Id: I258e62861224facb6884d9df1a4cf5406209d731
Diffstat (limited to 'runtime/interpreter/interpreter.cc')
-rw-r--r--runtime/interpreter/interpreter.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/runtime/interpreter/interpreter.cc b/runtime/interpreter/interpreter.cc
index dc7e23ec06..b60a384ca5 100644
--- a/runtime/interpreter/interpreter.cc
+++ b/runtime/interpreter/interpreter.cc
@@ -491,7 +491,7 @@ void EnterInterpreterFromDeoptimize(Thread* self,
const Instruction* instr = &accessor.InstructionAt(dex_pc);
if (deopt_method_type == DeoptimizationMethodType::kKeepDexPc ||
shadow_frame->GetForceRetryInstruction()) {
- DCHECK(frame_cnt == 0 || (frame_cnt == 1 && shadow_frame->GetForceRetryInstruction()))
+ DCHECK(frame_cnt == 0 || shadow_frame->GetForceRetryInstruction())
<< "frame_cnt: " << frame_cnt
<< " force-retry: " << shadow_frame->GetForceRetryInstruction();
// Need to re-execute the dex instruction.