< prev index next >

src/cpu/x86/vm/sharedRuntime_x86_32.cpp

Print this page

        

*** 2251,2268 **** // We can finally stop using that last_Java_frame we setup ages ago __ reset_last_Java_frame(thread, false); ! // Unpack oop result if (ret_type == T_OBJECT || ret_type == T_ARRAY) { ! Label L; ! __ cmpptr(rax, (int32_t)NULL_WORD); ! __ jcc(Assembler::equal, L); ! __ movptr(rax, Address(rax, 0)); ! __ bind(L); ! __ verify_oop(rax); } if (!is_critical_native) { // reset handle block __ movptr(rcx, Address(thread, JavaThread::active_handles_offset())); --- 2251,2265 ---- // We can finally stop using that last_Java_frame we setup ages ago __ reset_last_Java_frame(thread, false); ! // Unbox oop result, e.g. JNIHandles::resolve value. if (ret_type == T_OBJECT || ret_type == T_ARRAY) { ! __ resolve_jobject(rax /* value */, ! thread /* thread */, ! rcx /* tmp */); } if (!is_critical_native) { // reset handle block __ movptr(rcx, Address(thread, JavaThread::active_handles_offset()));
< prev index next >