mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-21 03:24:38 +02:00
6833129: specjvm98 fails with NullPointerException in the compiler with -XX:DeoptimizeALot
Developed a reexecute logic for the interpreter to reexecute the bytecode when deopt happens Reviewed-by: kvn, never, jrose, twisti
This commit is contained in:
parent
f2ea22a547
commit
ae00753bf7
29 changed files with 465 additions and 241 deletions
|
@ -37,6 +37,7 @@ InlineTree::InlineTree( Compile* c, const InlineTree *caller_tree, ciMethod* cal
|
|||
// Keep a private copy of the caller_jvms:
|
||||
_caller_jvms = new (C) JVMState(caller_jvms->method(), caller_tree->caller_jvms());
|
||||
_caller_jvms->set_bci(caller_jvms->bci());
|
||||
assert(!caller_jvms->should_reexecute(), "there should be no reexecute bytecode with inlining");
|
||||
}
|
||||
assert(_caller_jvms->same_calls_as(caller_jvms), "consistent JVMS");
|
||||
assert((caller_tree == NULL ? 0 : caller_tree->inline_depth() + 1) == inline_depth(), "correct (redundant) depth parameter");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue