changeset 6430:e0c6fadce66e

8049252: VerifyStack logic in Deoptimization::unpack_frames does not expect to see invoke bc at the top frame during normal deoptimization Summary: Add missing check for reexecute flag to VerifyStack code. Reviewed-by: roland
author kvn
date Tue, 29 Jul 2014 13:40:58 -0700
parents d14a18794c90
children 5a061b65b00b b2daaf70fab2
files src/share/vm/runtime/deoptimization.cpp
diffstat 1 files changed, 1 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/runtime/deoptimization.cpp	Sat Aug 02 16:28:59 2014 -0400
+++ b/src/share/vm/runtime/deoptimization.cpp	Tue Jul 29 13:40:58 2014 -0700
@@ -698,7 +698,7 @@
              (iframe->interpreter_frame_expression_stack_size() == (next_mask_expression_stack_size -
                                                                     top_frame_expression_stack_adjustment))) ||
             (is_top_frame && (exec_mode == Unpack_exception) && iframe->interpreter_frame_expression_stack_size() == 0) ||
-            (is_top_frame && (exec_mode == Unpack_uncommon_trap || exec_mode == Unpack_reexecute) &&
+            (is_top_frame && (exec_mode == Unpack_uncommon_trap || exec_mode == Unpack_reexecute || el->should_reexecute()) &&
              (iframe->interpreter_frame_expression_stack_size() == mask.expression_stack_size() + cur_invoke_parameter_size))
             )) {
         ttyLocker ttyl;