[Mesa-dev] [PATCH 3/3] i965/tiled_memoyp: Get rid of the direction parameter to get_memcpy
Roland Scheidegger
sroland at vmware.com
Fri Apr 8 00:42:14 UTC 2016
Am 07.04.2016 um 22:56 schrieb Jason Ekstrand:
> Now that we can use the much simpler rgba8_copy function, we don't need to
> hand different functions out based on direction.
> ---
> src/mesa/drivers/dri/i965/intel_pixel_read.c | 3 +--
> src/mesa/drivers/dri/i965/intel_tex_image.c | 3 +--
> src/mesa/drivers/dri/i965/intel_tex_subimage.c | 3 +--
> src/mesa/drivers/dri/i965/intel_tiled_memcpy.c | 3 +--
> src/mesa/drivers/dri/i965/intel_tiled_memcpy.h | 15 +--------------
> 5 files changed, 5 insertions(+), 22 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/intel_pixel_read.c b/src/mesa/drivers/dri/i965/intel_pixel_read.c
> index 31030b1..a486d6e 100644
> --- a/src/mesa/drivers/dri/i965/intel_pixel_read.c
> +++ b/src/mesa/drivers/dri/i965/intel_pixel_read.c
> @@ -141,8 +141,7 @@ intel_readpixels_tiled_memcpy(struct gl_context * ctx,
> if (rb->_BaseFormat == GL_RGB)
> return false;
>
> - if (!intel_get_memcpy(rb->Format, format, type, &mem_copy, &cpp,
> - INTEL_DOWNLOAD))
> + if (!intel_get_memcpy(rb->Format, format, type, &mem_copy, &cpp))
> return false;
>
> if (!irb->mt ||
> diff --git a/src/mesa/drivers/dri/i965/intel_tex_image.c b/src/mesa/drivers/dri/i965/intel_tex_image.c
> index 1601edd..bee8be1 100644
> --- a/src/mesa/drivers/dri/i965/intel_tex_image.c
> +++ b/src/mesa/drivers/dri/i965/intel_tex_image.c
> @@ -404,8 +404,7 @@ intel_gettexsubimage_tiled_memcpy(struct gl_context *ctx,
> if (texImage->_BaseFormat == GL_RGB)
> return false;
>
> - if (!intel_get_memcpy(texImage->TexFormat, format, type, &mem_copy, &cpp,
> - INTEL_DOWNLOAD))
> + if (!intel_get_memcpy(texImage->TexFormat, format, type, &mem_copy, &cpp))
> return false;
>
> /* If this is a nontrivial texture view, let another path handle it instead. */
> diff --git a/src/mesa/drivers/dri/i965/intel_tex_subimage.c b/src/mesa/drivers/dri/i965/intel_tex_subimage.c
> index 4849a41..9561968 100644
> --- a/src/mesa/drivers/dri/i965/intel_tex_subimage.c
> +++ b/src/mesa/drivers/dri/i965/intel_tex_subimage.c
> @@ -119,8 +119,7 @@ intel_texsubimage_tiled_memcpy(struct gl_context * ctx,
> if (ctx->_ImageTransferState)
> return false;
>
> - if (!intel_get_memcpy(texImage->TexFormat, format, type, &mem_copy, &cpp,
> - INTEL_UPLOAD))
> + if (!intel_get_memcpy(texImage->TexFormat, format, type, &mem_copy, &cpp))
> return false;
>
> /* If this is a nontrivial texture view, let another path handle it instead. */
> diff --git a/src/mesa/drivers/dri/i965/intel_tiled_memcpy.c b/src/mesa/drivers/dri/i965/intel_tiled_memcpy.c
> index 66c1f9b..0a68751 100644
> --- a/src/mesa/drivers/dri/i965/intel_tiled_memcpy.c
> +++ b/src/mesa/drivers/dri/i965/intel_tiled_memcpy.c
> @@ -745,8 +745,7 @@ tiled_to_linear(uint32_t xt1, uint32_t xt2,
> * \return true if the format and type combination are valid
> */
> bool intel_get_memcpy(mesa_format tiledFormat, GLenum format,
> - GLenum type, mem_copy_fn *mem_copy, uint32_t *cpp,
> - enum intel_memcpy_direction direction)
> + GLenum type, mem_copy_fn *mem_copy, uint32_t *cpp)
> {
> if (type == GL_UNSIGNED_INT_8_8_8_8_REV &&
> !(format == GL_RGBA || format == GL_BGRA))
> diff --git a/src/mesa/drivers/dri/i965/intel_tiled_memcpy.h b/src/mesa/drivers/dri/i965/intel_tiled_memcpy.h
> index 01543bf..d9148bb 100644
> --- a/src/mesa/drivers/dri/i965/intel_tiled_memcpy.h
> +++ b/src/mesa/drivers/dri/i965/intel_tiled_memcpy.h
> @@ -55,20 +55,7 @@ tiled_to_linear(uint32_t xt1, uint32_t xt2,
> uint32_t tiling,
> mem_copy_fn mem_copy);
>
> -/* Tells intel_get_memcpy() whether the memcpy() is
> - *
> - * - an upload to the GPU with an aligned destination and a potentially
> - * unaligned source; or
> - * - a download from the GPU with an aligned source and a potentially
> - * unaligned destination.
> - */
> -enum intel_memcpy_direction {
> - INTEL_UPLOAD,
> - INTEL_DOWNLOAD
> -};
> -
> bool intel_get_memcpy(mesa_format tiledFormat, GLenum format,
> - GLenum type, mem_copy_fn *mem_copy, uint32_t *cpp,
> - enum intel_memcpy_direction direction);
> + GLenum type, mem_copy_fn *mem_copy, uint32_t *cpp);
>
> #endif /* INTEL_TILED_MEMCPY */
>
Other than hacking on the assembly in there I'm really not all that
familiar with that code but these patches look like a nice cleanup.
Reviewed-by: Roland Scheidegger <sroland at vmware.com>
More information about the mesa-dev
mailing list