[Mesa-dev] [PATCH] gallium/u_blitter: Remove the overlapped blit assert from util_blitter_blit_generic().

Marek Olšák maraeo at gmail.com
Fri Dec 14 04:14:54 PST 2012


Reviewed-by: Marek Olšák <maraeo at gmail.com>

Marek

On Fri, Dec 14, 2012 at 6:04 AM, Henri Verbeet <hverbeet at gmail.com> wrote:
> This is used by st_BlitFramebuffer() / r600_blit(), and ARB_fbo allows
> overlapped blits, even though the result is undefined. No piglit regressions
> on r600g / CYPRESS.
> ---
>  src/gallium/auxiliary/util/u_blitter.c |   28 ----------------------------
>  1 files changed, 0 insertions(+), 28 deletions(-)
>
> diff --git a/src/gallium/auxiliary/util/u_blitter.c b/src/gallium/auxiliary/util/u_blitter.c
> index 49f01de..7c7e062 100644
> --- a/src/gallium/auxiliary/util/u_blitter.c
> +++ b/src/gallium/auxiliary/util/u_blitter.c
> @@ -1053,29 +1053,6 @@ void util_blitter_custom_clear_depth(struct blitter_context *blitter,
>                                0, PIPE_FORMAT_NONE, &color, depth, 0, NULL, custom_dsa);
>  }
>
> -static
> -boolean is_overlap(int dstx, int dsty, int dstz,
> -                  const struct pipe_box *srcbox)
> -{
> -   struct pipe_box src = *srcbox;
> -
> -   if (src.width < 0) {
> -      src.x += src.width;
> -      src.width = -src.width;
> -   }
> -   if (src.height < 0) {
> -      src.y += src.height;
> -      src.height = -src.height;
> -   }
> -   if (src.depth < 0) {
> -      src.z += src.depth;
> -      src.depth = -src.depth;
> -   }
> -   return src.x < dstx+src.width && src.x+src.width > dstx &&
> -          src.y < dsty+src.height && src.y+src.height > dsty &&
> -          src.z < dstz+src.depth && src.z+src.depth > dstz;
> -}
> -
>  void util_blitter_default_dst_texture(struct pipe_surface *dst_templ,
>                                        struct pipe_resource *dst,
>                                        unsigned dstlevel,
> @@ -1261,11 +1238,6 @@ void util_blitter_blit_generic(struct blitter_context *blitter,
>        return;
>     }
>
> -   /* Sanity checks. */
> -   if (dst->texture == src->texture &&
> -       dst->u.tex.level == src->u.tex.first_level) {
> -      assert(!is_overlap(dstx, dsty, 0, srcbox));
> -   }
>     /* XXX should handle 3d regions */
>     assert(srcbox->depth == 1);
>
> --
> 1.7.2.5
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list