diff options
Diffstat (limited to 'kernels/compiler_mixed_pointer.cl')
-rw-r--r-- | kernels/compiler_mixed_pointer.cl | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/kernels/compiler_mixed_pointer.cl b/kernels/compiler_mixed_pointer.cl new file mode 100644 index 00000000..78c57835 --- /dev/null +++ b/kernels/compiler_mixed_pointer.cl @@ -0,0 +1,23 @@ + +kernel void compiler_mixed_pointer(__global uint* src1, __global uint *src2, __global uint *dst) { + int x = get_global_id(0); + global uint * tmp = NULL; + + switch(x) { + case 0: + case 1: + case 4: + tmp = src1; + break; + default: + tmp = src2; + break; + } + dst[x] = tmp[x]; +} + +kernel void compiler_mixed_pointer1(__global uint* src, __global uint *dst1, __global uint *dst2) { + int x = get_global_id(0); + global uint * tmp = x < 5 ? dst1 : dst2; + tmp[x] = src[x]; +} |