diff --git a/extensions/cl_img_swap_ops.asciidoc b/extensions/cl_img_swap_ops.asciidoc index 2be11a0a..ea957802 100644 --- a/extensions/cl_img_swap_ops.asciidoc +++ b/extensions/cl_img_swap_ops.asciidoc @@ -75,6 +75,12 @@ gentype img_swap_y(gentype value); * In the third work-item, `img_swap_x` returns `value` passed as an argument in the fourth work-item. * In the fourth work-item, `img_swap_x` returns `value` passed as an argument in the third work-item. +The work-items are assigned into blocks based on their 1-dimensional local ID (see `get_local_linear_id`). + +The number of work-items that make up a work-group must be evenly divisible by four; otherwise, the behaviour is undefined. + +The function must be called in all four work-items of the block; otherwise, the behaviour is undefined. + Requires that the `__opencl_img_swap` feature macro is defined. | gentype *img_swap_y*(gentype value) a| `img_swap_y` swaps `values` between work-items in the following way: all work-items are divided into blocks of four consecutive elements. For each block: @@ -84,6 +90,12 @@ Requires that the `__opencl_img_swap` feature macro is defined. * In the second work-item, `img_swap_y` returns `value` passed as an argument in the fourth work-item. * In the fourth work-item, `img_swap_y` returns `value` passed as an argument in the second work-item. +The work-items are assigned into blocks based on their 1-dimensional local ID (see `get_local_linear_id`). + +The number of work-items that make up a work-group must be evenly divisible by four; otherwise, the behaviour is undefined. + +The function must be called in all four work-items of the block; otherwise, the behaviour is undefined. + Requires that the `__opencl_img_swap` feature macro is defined. |==== --