comparison src/share/vm/graal/graalCompilerToVM.cpp @ 8151:b8f261ba79c6

Minimize diff to plain HotSpot version.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Thu, 07 Mar 2013 21:00:29 +0100
parents 3d41998c30de
children b89a97928e72
comparison
equal deleted inserted replaced
8150:b66f831ac5ab 8151:b8f261ba79c6
875 nmethod* nm = (nmethod*) (address) metaspace_nmethod; 875 nmethod* nm = (nmethod*) (address) metaspace_nmethod;
876 if (nm == NULL || !nm->is_alive()) { 876 if (nm == NULL || !nm->is_alive()) {
877 THROW_0(vmSymbols::MethodInvalidatedException()); 877 THROW_0(vmSymbols::MethodInvalidatedException());
878 } 878 }
879 879
880 JavaCalls::call(&result, mh, nm, &jca, CHECK_NULL); 880 jca.set_alternative_target(nm);
881 JavaCalls::call(&result, mh, &jca, CHECK_NULL);
881 882
882 if (jap.get_ret_type() == T_VOID) { 883 if (jap.get_ret_type() == T_VOID) {
883 return NULL; 884 return NULL;
884 } else if (jap.get_ret_type() == T_OBJECT || jap.get_ret_type() == T_ARRAY) { 885 } else if (jap.get_ret_type() == T_OBJECT || jap.get_ret_type() == T_ARRAY) {
885 return JNIHandles::make_local((oop) result.get_jobject()); 886 return JNIHandles::make_local((oop) result.get_jobject());
904 nmethod* nm = (nmethod*) (address) metaspace_nmethod; 905 nmethod* nm = (nmethod*) (address) metaspace_nmethod;
905 if (nm == NULL || !nm->is_alive()) { 906 if (nm == NULL || !nm->is_alive()) {
906 THROW_0(vmSymbols::MethodInvalidatedException()); 907 THROW_0(vmSymbols::MethodInvalidatedException());
907 } 908 }
908 909
909 JavaCalls::call(&result, method, nm, &args, CHECK_NULL); 910 args.set_alternative_target(nm);
911 JavaCalls::call(&result, method, &args, CHECK_NULL);
910 912
911 return JNIHandles::make_local((oop) result.get_jobject()); 913 return JNIHandles::make_local((oop) result.get_jobject());
912 C2V_END 914 C2V_END
913 915
914 C2V_VMENTRY(jint, getVtableEntryOffset, (JNIEnv *, jobject, jlong metaspace_method)) 916 C2V_VMENTRY(jint, getVtableEntryOffset, (JNIEnv *, jobject, jlong metaspace_method))