--- old/src/hotspot/cpu/x86/interpreterRT_x86_64.cpp 2019-03-11 14:24:55.382356134 +0100 +++ new/src/hotspot/cpu/x86/interpreterRT_x86_64.cpp 2019-03-11 14:24:55.182356137 +0100 @@ -291,6 +291,10 @@ #endif } +void InterpreterRuntime::SignatureHandlerGenerator::pass_valuetype() { + pass_object(); +} + void InterpreterRuntime::SignatureHandlerGenerator::generate(uint64_t fingerprint) { // generate code to handle arguments iterate(fingerprint); @@ -356,6 +360,11 @@ } } + virtual void pass_valuetype() { + // values are handled with oops, like objects + pass_object(); + } + virtual void pass_float() { jint from_obj = *(jint *)(_from+Interpreter::local_offset_in_bytes(0)); @@ -451,6 +460,11 @@ } } + virtual void pass_valuetype() { + // values are handled with oops, like objects + pass_object(); + } + virtual void pass_float() { jint from_obj = *(jint*)(_from+Interpreter::local_offset_in_bytes(0));