WebCLKernel.setArg fails for scalar double argument
Opened this issue · 1 comments
Maratyszcza commented
WebCLKernel.setArg(..., Float64Array([c]))
fails for kernels with scalar double
arguments. This seems to be specific to double
type: other scalars seem to work well. Reproducer:
<!DOCTYPE html>
<html>
<head>
<title>Bug Reproducer</title>
</head>
<body>
<div>
</div>
<script type="text/javascript">
var source = "kernel void init(global double* out, double value){ out[get_global_id(0)] = value; }";
var platforms = webcl.getPlatforms();
var platform = platforms[0];
var devices = platform.getDevices();
var device = devices[0];
var context = webcl.createContext(device);
var program = context.createProgram(source);
program.build([device]);
var kernel = program.createKernel("init");
var buffer = context.createBuffer(webcl.MEM_READ_WRITE, 1024*8);
kernel.setArg(0, buffer);
kernel.setArg(1, new Float64Array([0.0])); /* Uncaught OpenCL exception: Unknown */
</script>
</body>
</html>
Maratyszcza commented
Same bug in WebKit-WebCL: #534