src/share/vm/opto/graphKit.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File
6829187 Cdiff src/share/vm/opto/graphKit.cpp
src/share/vm/opto/graphKit.cpp
Print this page
rev 1082 : [mq]: indy.compiler.patch
*** 979,996 ****
case Bytecodes::_invokespecial:
case Bytecodes::_invokestatic:
case Bytecodes::_invokedynamic:
case Bytecodes::_invokeinterface:
{
- bool is_static = (depth == 0);
bool ignore;
ciBytecodeStream iter(method());
iter.reset_to_bci(bci());
iter.next();
ciMethod* method = iter.get_method(ignore);
inputs = method->arg_size_no_receiver();
! if (!is_static) inputs += 1;
int size = method->return_type()->size();
depth = size - inputs;
}
break;
--- 979,1001 ----
case Bytecodes::_invokespecial:
case Bytecodes::_invokestatic:
case Bytecodes::_invokedynamic:
case Bytecodes::_invokeinterface:
{
bool ignore;
ciBytecodeStream iter(method());
iter.reset_to_bci(bci());
iter.next();
ciMethod* method = iter.get_method(ignore);
inputs = method->arg_size_no_receiver();
! // Add a receiver argument, maybe:
! if (code != Bytecodes::_invokestatic &&
! code != Bytecodes::_invokedynamic)
! inputs += 1;
! // (Do not use ciMethod::arg_size(), because
! // it might be an unloaded method, which doesn't
! // know whether it is static or not.)
int size = method->return_type()->size();
depth = size - inputs;
}
break;
src/share/vm/opto/graphKit.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File