diff src/gpu/ptx/vm/gpu_ptx.cpp @ 11919:43bf803203c0

Merge.
author Doug Simon <doug.simon@oracle.com>
date Mon, 07 Oct 2013 11:36:49 +0200
parents 67a1e27a8dbb
children f020e149c1b6
line wrap: on
line diff
--- a/src/gpu/ptx/vm/gpu_ptx.cpp	Sun Oct 06 23:45:02 2013 +0200
+++ b/src/gpu/ptx/vm/gpu_ptx.cpp	Mon Oct 07 11:36:49 2013 +0200
@@ -393,6 +393,17 @@
          ret.set_jint(return_val);
        }
        break;
+     case T_BOOLEAN:
+       {
+         int return_val;
+         status = gpu::Ptx::_cuda_cu_memcpy_dtoh(&return_val, ptxka._return_value_ptr, T_INT_BYTE_SIZE);
+         if (status != GRAAL_CUDA_SUCCESS) {
+           tty->print_cr("[CUDA] *** Error (%d) Failed to copy value to device argument", status);
+           return false;
+         }
+         ret.set_jint(return_val);
+       }
+       break;
      case T_FLOAT:
        {
          float return_val;
@@ -404,6 +415,17 @@
          ret.set_jfloat(return_val);
        }
        break;
+     case T_DOUBLE:
+       {
+         double return_val;
+         status = gpu::Ptx::_cuda_cu_memcpy_dtoh(&return_val, ptxka._return_value_ptr, T_DOUBLE_BYTE_SIZE);
+         if (status != GRAAL_CUDA_SUCCESS) {
+           tty->print_cr("[CUDA] *** Error (%d) Failed to copy value to device argument", status);
+           return false;
+         }
+         ret.set_jdouble(return_val);
+       }
+       break;
      case T_LONG:
        {
          long return_val;