< prev index next > src/hotspot/cpu/s390/sharedRuntime_s390.cpp
Print this page
if (ref_kind != 0) {
member_arg_pos = total_args_passed - 1; // trailing MemberName argument
member_reg = Z_R9; // Known to be free at this point.
has_receiver = MethodHandles::ref_kind_has_receiver(ref_kind);
+ } else if (iid == vmIntrinsics::_linkToNative) {
+ member_arg_pos = method->size_of_parameters() - 1; // trailing NativeEntryPoint argument
+ member_reg = Z_R9; // known to be free at this point
} else {
- guarantee(special_dispatch == vmIntrinsics::_invokeBasic || special_dispatch == vmIntrinsics::_linkToNative,
+ guarantee(special_dispatch == vmIntrinsics::_invokeBasic,
"special_dispatch=%d", vmIntrinsics::as_int(special_dispatch));
has_receiver = true;
}
if (member_reg != noreg) {
extern "C"
int SpinPause() {
return 0;
}
-
- #ifdef COMPILER2
- RuntimeStub* SharedRuntime::make_native_invoker(address call_target,
- int shadow_space_bytes,
- const GrowableArray<VMReg>& input_registers,
- const GrowableArray<VMReg>& output_registers) {
- Unimplemented();
- return nullptr;
- }
- #endif
< prev index next >