[Beignet] [PATCH] utests: should set pitch to zero if host_ptr is NULL.
Zhigang Gong
zhigang.gong at linux.intel.com
Mon Apr 22 01:57:10 PDT 2013
Hi Guys,
This patch need your review/test comments. Without this patch, our utests
can't pass all the tests now.
> -----Original Message-----
> From:
> beignet-bounces+zhigang.gong=linux.intel.com at lists.freedesktop.org
> [mailto:beignet-bounces+zhigang.gong=linux.intel.com at lists.freedesktop.
> org] On Behalf Of Zhigang Gong
> Sent: Friday, April 19, 2013 4:36 PM
> To: beignet at lists.freedesktop.org
> Cc: Zhigang Gong; zhigang.gong at gmail.com
> Subject: [Beignet] [PATCH] utests: should set pitch to zero if host_ptr is
> NULL.
>
> Per OCL spec, we should set pitch to zero if the host_ptr is NULL.
>
> Signed-off-by: Zhigang Gong <zhigang.gong at linux.intel.com>
> ---
> utests/compiler_copy_image.cpp | 3 ++-
> utests/compiler_fill_image.cpp | 2 +-
> utests/compiler_fill_image0.cpp | 2 +-
> utests/compiler_movforphi_undef.cpp | 15 ++++++++-------
> 4 files changed, 12 insertions(+), 10 deletions(-)
>
> diff --git a/utests/compiler_copy_image.cpp
> b/utests/compiler_copy_image.cpp index 685a189..04c9544 100644
> --- a/utests/compiler_copy_image.cpp
> +++ b/utests/compiler_copy_image.cpp
> @@ -21,8 +21,9 @@ static void compiler_copy_image(void)
> desc.image_width = w;
> desc.image_height = h;
> desc.image_row_pitch = w * sizeof(uint32_t);
> -
> OCL_CREATE_IMAGE(buf[0], CL_MEM_COPY_HOST_PTR, &format,
> &desc, buf_data[0]);
> +
> + desc.image_row_pitch = 0;
> OCL_CREATE_IMAGE(buf[1], 0, &format, &desc, NULL);
> OCL_CREATE_SAMPLER(sampler, CL_ADDRESS_REPEAT,
> CL_FILTER_NEAREST);
> free(buf_data[0]);
> diff --git a/utests/compiler_fill_image.cpp
> b/utests/compiler_fill_image.cpp index c9744cc..c9242b2 100644
> --- a/utests/compiler_fill_image.cpp
> +++ b/utests/compiler_fill_image.cpp
> @@ -13,7 +13,7 @@ static void compiler_fill_image(void)
> desc.image_type = CL_MEM_OBJECT_IMAGE2D;
> desc.image_width = w;
> desc.image_height = h;
> - desc.image_row_pitch = w * sizeof(uint32_t);
> + desc.image_row_pitch = 0;
>
> // Setup kernel and images
> OCL_CREATE_KERNEL("test_fill_image");
> diff --git a/utests/compiler_fill_image0.cpp
> b/utests/compiler_fill_image0.cpp index 2fef90c..cf76be3 100644
> --- a/utests/compiler_fill_image0.cpp
> +++ b/utests/compiler_fill_image0.cpp
> @@ -12,7 +12,7 @@ static void compiler_fill_image0(void)
> desc.image_type = CL_MEM_OBJECT_IMAGE2D;
> desc.image_width = w;
> desc.image_height = h;
> - desc.image_row_pitch = w * sizeof(uint32_t);
> + desc.image_row_pitch = 0;
>
>
> // Setup kernel and images
> diff --git a/utests/compiler_movforphi_undef.cpp
> b/utests/compiler_movforphi_undef.cpp
> index 19e395f..30e53bb 100644
> --- a/utests/compiler_movforphi_undef.cpp
> +++ b/utests/compiler_movforphi_undef.cpp
> @@ -8,13 +8,6 @@ static void compiler_movforphi_undef(void)
> cl_image_format format;
> cl_image_desc desc;
>
> - format.image_channel_order = CL_RGBA;
> - format.image_channel_data_type = CL_UNSIGNED_INT8;
> - desc.image_type = CL_MEM_OBJECT_IMAGE2D;
> - desc.image_width = w;
> - desc.image_height = h;
> - desc.image_row_pitch = w * sizeof(uint32_t);
> -
> // Setup kernel and images
> OCL_CREATE_KERNEL("test_movforphi_undef");
> buf_data[0] = (uint32_t*) malloc(sizeof(uint32_t) * w * h); @@ -22,7
> +15,15 @@ static void compiler_movforphi_undef(void)
> for (uint32_t i = 0; i < w; i++)
> ((uint32_t*)buf_data[0])[j * w + i] = j * w + i;
>
> + format.image_channel_order = CL_RGBA;
> format.image_channel_data_type
> + = CL_UNSIGNED_INT8; desc.image_type = CL_MEM_OBJECT_IMAGE2D;
> + desc.image_width = w; desc.image_height = h;
> desc.image_row_pitch =
> + w * sizeof(uint32_t);
> OCL_CREATE_IMAGE(buf[0], CL_MEM_COPY_HOST_PTR, &format,
> &desc, buf_data[0]);
> +
> + desc.image_row_pitch = 0;
> OCL_CREATE_IMAGE(buf[1], 0, &format, &desc, NULL);
> OCL_CREATE_SAMPLER(sampler, CL_ADDRESS_REPEAT,
> CL_FILTER_NEAREST);
> free(buf_data[0]);
> --
> 1.7.11.7
>
> _______________________________________________
> Beignet mailing list
> Beignet at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/beignet
More information about the Beignet
mailing list