[Mesa-dev] [PATCH 1/4] i965: Consolidate some of the intel_blit logic

Kenneth Graunke kenneth at whitecape.org
Wed Jan 14 16:34:51 PST 2015


On Tuesday, January 13, 2015 11:37:47 PM Ben Widawsky wrote:
> An upcoming patch is going to introduce some code here, and having this code
> organized as the patch does makes it a bit easier to read later.
> 
> There should be no functional change here.
> 
> Signed-off-by: Ben Widawsky <ben at bwidawsk.net>
> ---
>  src/mesa/drivers/dri/i965/intel_blit.c | 28 ++++++++--------------------
>  1 file changed, 8 insertions(+), 20 deletions(-)
> 
> diff --git a/src/mesa/drivers/dri/i965/intel_blit.c b/src/mesa/drivers/dri/i965/intel_blit.c
> index 400d3d3..e919528 100644
> --- a/src/mesa/drivers/dri/i965/intel_blit.c
> +++ b/src/mesa/drivers/dri/i965/intel_blit.c
> @@ -226,35 +226,23 @@ intel_miptree_blit(struct brw_context *brw,
>     if (src_flip != dst_flip)
>        src_pitch = -src_pitch;
>  
> -   uint32_t src_image_x, src_image_y;
> +   uint32_t src_image_x, src_image_y, dst_image_x, dst_image_y;
>     intel_miptree_get_image_offset(src_mt, src_level, src_slice,
>                                    &src_image_x, &src_image_y);
> -   src_x += src_image_x;
> -   src_y += src_image_y;
> -
> -   /* The blitter interprets the 16-bit src x/y as a signed 16-bit value,
> -    * where negative values are invalid.  The values we're working with are
> -    * unsigned, so make sure we don't overflow.
> -    */
> -   if (src_x >= 32768 || src_y >= 32768) {
> -      perf_debug("Falling back due to >=32k src offset (%d, %d)\n",
> -                 src_x, src_y);
> -      return false;
> -   }
> -
> -   uint32_t dst_image_x, dst_image_y;
>     intel_miptree_get_image_offset(dst_mt, dst_level, dst_slice,
>                                    &dst_image_x, &dst_image_y);
> +   src_x += src_image_x;
> +   src_y += src_image_y;
>     dst_x += dst_image_x;
>     dst_y += dst_image_y;
>  
>     /* The blitter interprets the 16-bit destination x/y as a signed 16-bit
> -    * value.  The values we're working with are unsigned, so make sure we
> -    * don't overflow.
> +    * value. The values we're working with are unsigned, so make sure we don't
> +    * overflow.
>      */
> -   if (dst_x >= 32768 || dst_y >= 32768) {
> -      perf_debug("Falling back due to >=32k dst offset (%d, %d)\n",
> -                 dst_x, dst_y);
> +   if (src_x >= 32768 || src_y >= 32768 || dst_x >= 32768 || dst_y >= 32768) {
> +      perf_debug("Falling back due to >=32k offset [src(%d, %d) dst(%d, %d)]\n",
> +                 src_x, src_y, dst_x, dst_y);
>        return false;
>     }
>  
> 

The first two are also:
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20150114/cfa1ffe8/attachment.sig>


More information about the mesa-dev mailing list