[Beignet] [PATCH] test API function "clGetImageInfo"

Zhigang Gong zhigang.gong at linux.intel.com
Thu Jul 11 18:11:31 PDT 2013


Pushed, thanks.
On Thu, Jul 11, 2013 at 10:29:39AM +0800, Homer Hsing wrote:
> 
> Signed-off-by: Homer Hsing <homer.xing at intel.com>
> ---
>  utests/get_cl_info.cpp | 45 +++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 45 insertions(+)
> 
> diff --git a/utests/get_cl_info.cpp b/utests/get_cl_info.cpp
> index 4c6f404..fff8123 100644
> --- a/utests/get_cl_info.cpp
> +++ b/utests/get_cl_info.cpp
> @@ -492,3 +492,48 @@ void get_kernel_info(void)
>  }
>  
>  MAKE_UTEST_FROM_FUNCTION(get_kernel_info);
> +
> +/* ***************************************************** *
> + * clGetImageInfo                                        *
> + * ***************************************************** */
> +void get_image_info(void)
> +{
> +  const size_t w = 512;
> +  const size_t h = 512;
> +  cl_image_format format;
> +  format.image_channel_order = CL_RGBA;
> +  format.image_channel_data_type = CL_UNSIGNED_INT8;
> +  OCL_CREATE_IMAGE2D(buf[0], 0, &format, w, h, 0, NULL);
> +  cl_mem image = buf[0];
> +
> +  cl_image_format ret_format;
> +  OCL_CALL(clGetImageInfo, image, CL_IMAGE_FORMAT, sizeof(ret_format), &ret_format, NULL);
> +  OCL_ASSERT(format.image_channel_order == ret_format.image_channel_order);
> +  OCL_ASSERT(format.image_channel_data_type == ret_format.image_channel_data_type);
> +
> +  size_t element_size;
> +  OCL_CALL(clGetImageInfo, image, CL_IMAGE_ELEMENT_SIZE, sizeof(element_size), &element_size, NULL);
> +  OCL_ASSERT(element_size == 4);
> +
> +  size_t row_pitch;
> +  OCL_CALL(clGetImageInfo, image, CL_IMAGE_ROW_PITCH, sizeof(row_pitch), &row_pitch, NULL);
> +  OCL_ASSERT(row_pitch == 4 * w);
> +
> +  size_t slice_pitch;
> +  OCL_CALL(clGetImageInfo, image, CL_IMAGE_SLICE_PITCH, sizeof(slice_pitch), &slice_pitch, NULL);
> +  OCL_ASSERT(slice_pitch == 0);
> +
> +  size_t width;
> +  OCL_CALL(clGetImageInfo, image, CL_IMAGE_WIDTH, sizeof(width), &width, NULL);
> +  OCL_ASSERT(width == w);
> +
> +  size_t height;
> +  OCL_CALL(clGetImageInfo, image, CL_IMAGE_HEIGHT, sizeof(height), &height, NULL);
> +  OCL_ASSERT(height == h);
> +
> +  size_t depth;
> +  OCL_CALL(clGetImageInfo, image, CL_IMAGE_DEPTH, sizeof(depth), &depth, NULL);
> +  OCL_ASSERT(depth == 1);
> +}
> +
> +MAKE_UTEST_FROM_FUNCTION(get_image_info);
> -- 
> 1.8.1.2
> 
> _______________________________________________
> Beignet mailing list
> Beignet at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/beignet


More information about the Beignet mailing list