< prev index next >

src/hotspot/share/runtime/javaCalls.cpp

Print this page

        

*** 447,456 **** --- 447,465 ---- THROW(vmSymbols::jdk_vm_ci_code_InvalidInstalledCodeException()); } } #endif + Handle vt; + if (result->get_type() == T_VALUETYPE) { + // Pre allocate buffered value in case the result is returned + // flattened by compiled code + ValueKlass* vk = method->returned_value_type(thread); + vt = vk->allocate_instance_handle(CHECK); + result->set_jobject((jobject)vt()); + } + // do call { JavaCallWrapper link(method, receiver, result, CHECK); { HandleMark hm(thread); // HandleMark used by HandleMarkCleaner StubRoutines::call_stub()(
< prev index next >