mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-19 10:34:38 +02:00
Merge
This commit is contained in:
commit
b390a2d8e3
629 changed files with 30523 additions and 8788 deletions
|
@ -638,18 +638,22 @@ JRT_LEAF(BasicType, Deoptimization::unpack_frames(JavaThread* thread, int exec_m
|
|||
// at an uncommon trap for an invoke (where the compiler
|
||||
// generates debug info before the invoke has executed)
|
||||
Bytecodes::Code cur_code = str.next();
|
||||
if (cur_code == Bytecodes::_invokevirtual ||
|
||||
cur_code == Bytecodes::_invokespecial ||
|
||||
cur_code == Bytecodes::_invokestatic ||
|
||||
cur_code == Bytecodes::_invokeinterface) {
|
||||
if (cur_code == Bytecodes::_invokevirtual ||
|
||||
cur_code == Bytecodes::_invokespecial ||
|
||||
cur_code == Bytecodes::_invokestatic ||
|
||||
cur_code == Bytecodes::_invokeinterface ||
|
||||
cur_code == Bytecodes::_invokedynamic) {
|
||||
Bytecode_invoke invoke(mh, iframe->interpreter_frame_bci());
|
||||
Symbol* signature = invoke.signature();
|
||||
ArgumentSizeComputer asc(signature);
|
||||
cur_invoke_parameter_size = asc.size();
|
||||
if (cur_code != Bytecodes::_invokestatic) {
|
||||
if (invoke.has_receiver()) {
|
||||
// Add in receiver
|
||||
++cur_invoke_parameter_size;
|
||||
}
|
||||
if (i != 0 && !invoke.is_invokedynamic() && MethodHandles::has_member_arg(invoke.klass(), invoke.name())) {
|
||||
callee_size_of_parameters++;
|
||||
}
|
||||
}
|
||||
if (str.bci() < max_bci) {
|
||||
Bytecodes::Code bc = str.next();
|
||||
|
@ -664,6 +668,7 @@ JRT_LEAF(BasicType, Deoptimization::unpack_frames(JavaThread* thread, int exec_m
|
|||
case Bytecodes::_invokespecial:
|
||||
case Bytecodes::_invokestatic:
|
||||
case Bytecodes::_invokeinterface:
|
||||
case Bytecodes::_invokedynamic:
|
||||
case Bytecodes::_athrow:
|
||||
break;
|
||||
default: {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue