comparison src/share/vm/graal/graalCompilerToVM.cpp @ 18929:8f2fb6bec986

removed GPU code
author Doug Simon <doug.simon@oracle.com>
date Fri, 23 Jan 2015 10:54:21 +0100
parents 6484e5c068c7
children 2452e881fad5
comparison
equal deleted inserted replaced
18928:c8fc6e2d128b 18929:8f2fb6bec986
41 #include "runtime/javaCalls.hpp" 41 #include "runtime/javaCalls.hpp"
42 #include "runtime/deoptimization.hpp" 42 #include "runtime/deoptimization.hpp"
43 #include "runtime/vframe.hpp" 43 #include "runtime/vframe.hpp"
44 #include "runtime/vframe_hp.hpp" 44 #include "runtime/vframe_hp.hpp"
45 #include "runtime/vmStructs.hpp" 45 #include "runtime/vmStructs.hpp"
46 #include "runtime/gpu.hpp"
47 46
48 47
49 // Entry to native method implementation that transitions current thread to '_thread_in_vm'. 48 // Entry to native method implementation that transitions current thread to '_thread_in_vm'.
50 #define C2V_VMENTRY(result_type, name, signature) \ 49 #define C2V_VMENTRY(result_type, name, signature) \
51 JNIEXPORT result_type JNICALL c2v_ ## name signature { \ 50 JNIEXPORT result_type JNICALL c2v_ ## name signature { \
475 if (!installed_code_handle.is_null()) { 474 if (!installed_code_handle.is_null()) {
476 assert(installed_code_handle->is_a(InstalledCode::klass()), "wrong type"); 475 assert(installed_code_handle->is_a(InstalledCode::klass()), "wrong type");
477 InstalledCode::set_address(installed_code_handle, (jlong) cb); 476 InstalledCode::set_address(installed_code_handle, (jlong) cb);
478 InstalledCode::set_version(installed_code_handle, InstalledCode::version(installed_code_handle) + 1); 477 InstalledCode::set_version(installed_code_handle, InstalledCode::version(installed_code_handle) + 1);
479 oop comp_result = HotSpotCompiledCode::comp(compiled_code_handle); 478 oop comp_result = HotSpotCompiledCode::comp(compiled_code_handle);
480 if (comp_result->is_a(ExternalCompilationResult::klass())) { 479 if (installed_code_handle->is_a(HotSpotInstalledCode::klass())) {
481 if (TraceGPUInteraction) {
482 tty->print_cr("installCode0: ExternalCompilationResult");
483 }
484 HotSpotInstalledCode::set_codeStart(installed_code_handle, ExternalCompilationResult::entryPoint(comp_result));
485 } else if (installed_code_handle->is_a(HotSpotInstalledCode::klass())) {
486 HotSpotInstalledCode::set_size(installed_code_handle, cb->size()); 480 HotSpotInstalledCode::set_size(installed_code_handle, cb->size());
487 HotSpotInstalledCode::set_codeStart(installed_code_handle, (jlong) cb->code_begin()); 481 HotSpotInstalledCode::set_codeStart(installed_code_handle, (jlong) cb->code_begin());
488 HotSpotInstalledCode::set_codeSize(installed_code_handle, cb->code_size()); 482 HotSpotInstalledCode::set_codeSize(installed_code_handle, cb->code_size());
489 } 483 }
490 nmethod* nm = cb->as_nmethod_or_null(); 484 nmethod* nm = cb->as_nmethod_or_null();
713 C2V_VMENTRY(jlongArray, collectCounters, (JNIEnv*, jobject)) 707 C2V_VMENTRY(jlongArray, collectCounters, (JNIEnv*, jobject))
714 typeArrayOop arrayOop = oopFactory::new_longArray(GraalCounterSize, CHECK_NULL); 708 typeArrayOop arrayOop = oopFactory::new_longArray(GraalCounterSize, CHECK_NULL);
715 JavaThread::collect_counters(arrayOop); 709 JavaThread::collect_counters(arrayOop);
716 return (jlongArray) JNIHandles::make_local(arrayOop); 710 return (jlongArray) JNIHandles::make_local(arrayOop);
717 C2V_END 711 C2V_END
718
719 // In general we should avoid using regular JNI methods to interact with the JVM but this
720 // particular case is just about registering JNI methods so it should be a regular native
721 // method.
722 JNIEXPORT jobject JNICALL c2v_getGPUs (JNIEnv* env, jobject) {
723 TRACE_graal_3("CompilerToVM::getGPUs" );
724 #if defined(TARGET_OS_FAMILY_bsd) || defined(TARGET_OS_FAMILY_linux) || defined(TARGET_OS_FAMILY_windows)
725 return Gpu::probe_gpus(env);
726 #else
727 return env->NewStringUTF("");
728 #endif
729 }
730 712
731 C2V_VMENTRY(int, allocateCompileId, (JNIEnv*, jobject, jlong metaspace_method, int entry_bci)) 713 C2V_VMENTRY(int, allocateCompileId, (JNIEnv*, jobject, jlong metaspace_method, int entry_bci))
732 HandleMark hm; 714 HandleMark hm;
733 ResourceMark rm; 715 ResourceMark rm;
734 Method* method = (Method*) metaspace_method; 716 Method* method = (Method*) metaspace_method;
1089 {CC"invalidateInstalledCode", CC"("INSTALLED_CODE")V", FN_PTR(invalidateInstalledCode)}, 1071 {CC"invalidateInstalledCode", CC"("INSTALLED_CODE")V", FN_PTR(invalidateInstalledCode)},
1090 {CC"getJavaMirror", CC"("METASPACE_KLASS")"CLASS, FN_PTR(getJavaMirror)}, 1072 {CC"getJavaMirror", CC"("METASPACE_KLASS")"CLASS, FN_PTR(getJavaMirror)},
1091 {CC"readUnsafeKlassPointer", CC"("OBJECT")J", FN_PTR(readUnsafeKlassPointer)}, 1073 {CC"readUnsafeKlassPointer", CC"("OBJECT")J", FN_PTR(readUnsafeKlassPointer)},
1092 {CC"readUnsafeOop", CC"("OBJECT"JZ)"OBJECT, FN_PTR(readUnsafeOop)}, 1074 {CC"readUnsafeOop", CC"("OBJECT"JZ)"OBJECT, FN_PTR(readUnsafeOop)},
1093 {CC"collectCounters", CC"()[J", FN_PTR(collectCounters)}, 1075 {CC"collectCounters", CC"()[J", FN_PTR(collectCounters)},
1094 {CC"getGPUs", CC"()"STRING, FN_PTR(getGPUs)},
1095 {CC"allocateCompileId", CC"("METASPACE_METHOD"I)I", FN_PTR(allocateCompileId)}, 1076 {CC"allocateCompileId", CC"("METASPACE_METHOD"I)I", FN_PTR(allocateCompileId)},
1096 {CC"isMature", CC"("METASPACE_METHOD_DATA")Z", FN_PTR(isMature)}, 1077 {CC"isMature", CC"("METASPACE_METHOD_DATA")Z", FN_PTR(isMature)},
1097 {CC"hasCompiledCodeForOSR", CC"("METASPACE_METHOD"II)Z", FN_PTR(hasCompiledCodeForOSR)}, 1078 {CC"hasCompiledCodeForOSR", CC"("METASPACE_METHOD"II)Z", FN_PTR(hasCompiledCodeForOSR)},
1098 {CC"getSymbol", CC"(J)"STRING, FN_PTR(getSymbol)}, 1079 {CC"getSymbol", CC"(J)"STRING, FN_PTR(getSymbol)},
1099 {CC"getTimeStamp", CC"()J", FN_PTR(getTimeStamp)}, 1080 {CC"getTimeStamp", CC"()J", FN_PTR(getTimeStamp)},