8049252: VerifyStack logic in Deoptimization::unpack_frames does not expect to see invoke bc at the top frame during normal deoptimization

Tue, 29 Jul 2014 13:40:58 -0700

author
kvn
date
Tue, 29 Jul 2014 13:40:58 -0700
changeset 6957
e0c6fadce66e
parent 6956
d14a18794c90
child 6959
5a061b65b00b
child 6960
b2daaf70fab2

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

src/share/vm/runtime/deoptimization.cpp file | annotate | diff | comparison | revisions
     1.1 --- a/src/share/vm/runtime/deoptimization.cpp	Sat Aug 02 16:28:59 2014 -0400
     1.2 +++ b/src/share/vm/runtime/deoptimization.cpp	Tue Jul 29 13:40:58 2014 -0700
     1.3 @@ -698,7 +698,7 @@
     1.4               (iframe->interpreter_frame_expression_stack_size() == (next_mask_expression_stack_size -
     1.5                                                                      top_frame_expression_stack_adjustment))) ||
     1.6              (is_top_frame && (exec_mode == Unpack_exception) && iframe->interpreter_frame_expression_stack_size() == 0) ||
     1.7 -            (is_top_frame && (exec_mode == Unpack_uncommon_trap || exec_mode == Unpack_reexecute) &&
     1.8 +            (is_top_frame && (exec_mode == Unpack_uncommon_trap || exec_mode == Unpack_reexecute || el->should_reexecute()) &&
     1.9               (iframe->interpreter_frame_expression_stack_size() == mask.expression_stack_size() + cur_invoke_parameter_size))
    1.10              )) {
    1.11          ttyLocker ttyl;

mercurial