comparison src/share/vm/graal/graalCompilerToGPU.cpp @ 13638:1dabd01a73bd

PTX backend can alter compilation pipeline to offload selected code to the GPU
author Doug Simon <doug.simon@oracle.com>
date Wed, 15 Jan 2014 00:34:56 +0100
parents 220ed109bf77
children 27acedac70b7
comparison
equal deleted inserted replaced
13637:c07c88aca256 13638:1dabd01a73bd
173 } 173 }
174 return JNIHandles::make_local(o); 174 return JNIHandles::make_local(o);
175 } 175 }
176 C2V_END 176 C2V_END
177 177
178 JRT_ENTRY(jlong, invalidLaunchKernel(JavaThread* thread))
179 SharedRuntime::throw_and_post_jvmti_exception(thread, vmSymbols::java_lang_LinkageError(), "invalid kernel launch function");
180 return 0L;
181 JRT_END
182
178 C2V_VMENTRY(jlong, getLaunchKernelAddress, (JNIEnv *env, jobject)) 183 C2V_VMENTRY(jlong, getLaunchKernelAddress, (JNIEnv *env, jobject))
179 if (gpu::get_target_il_type() == gpu::PTX) { 184 if (gpu::get_target_il_type() == gpu::PTX) {
180 return (jlong) gpu::Ptx::execute_kernel_from_vm; 185 return (jlong) gpu::Ptx::execute_kernel_from_vm;
181 } 186 }
182 return 0L; 187 return (jlong) invalidLaunchKernel;
183 C2V_END 188 C2V_END
184 189
185 C2V_VMENTRY(jboolean, deviceInit, (JNIEnv *env, jobject)) 190 C2V_VMENTRY(jboolean, deviceInit, (JNIEnv *env, jobject))
186 if (gpu::is_available() == false || gpu::has_gpu_linkage() == false) { 191 if (gpu::is_available() == false || gpu::has_gpu_linkage() == false) {
187 if (TraceGPUInteraction) { 192 if (TraceGPUInteraction) {