Mesa (master): i965: Allow signed/unsigned integer conversions in miptree up/download

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Jun 5 23:58:33 UTC 2019


Module: Mesa
Branch: master
Commit: 6a7d387394fbb833ee7c0d4547bd81580c17a4e1
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6a7d387394fbb833ee7c0d4547bd81580c17a4e1

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Tue Jun  4 23:19:22 2019 -0700

i965: Allow signed/unsigned integer conversions in miptree up/download

BLORP now handles this so there's no reason to fall back.

Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

---

 src/mesa/drivers/dri/i965/brw_blorp.c | 24 ------------------------
 1 file changed, 24 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_blorp.c b/src/mesa/drivers/dri/i965/brw_blorp.c
index 9a38a365199..c32e3d1f9c0 100644
--- a/src/mesa/drivers/dri/i965/brw_blorp.c
+++ b/src/mesa/drivers/dri/i965/brw_blorp.c
@@ -928,16 +928,6 @@ blorp_get_client_format(struct brw_context *brw,
    return _mesa_tex_format_from_format_and_type(&brw->ctx, format, type);
 }
 
-static bool
-need_signed_unsigned_int_conversion(mesa_format src_format,
-                                    mesa_format dst_format)
-{
-   const GLenum src_type = _mesa_get_format_datatype(src_format);
-   const GLenum dst_type = _mesa_get_format_datatype(dst_format);
-   return (src_type == GL_INT && dst_type == GL_UNSIGNED_INT) ||
-          (src_type == GL_UNSIGNED_INT && dst_type == GL_INT);
-}
-
 bool
 brw_blorp_upload_miptree(struct brw_context *brw,
                          struct intel_mipmap_tree *dst_mt,
@@ -959,13 +949,6 @@ brw_blorp_upload_miptree(struct brw_context *brw,
       return false;
    }
 
-   /* This function relies on blorp_blit to upload the pixel data to the
-    * miptree.  But, blorp_blit doesn't support signed to unsigned or
-    * unsigned to signed integer conversions.
-    */
-   if (need_signed_unsigned_int_conversion(src_format, dst_format))
-      return false;
-
    uint32_t src_offset, src_row_stride, src_image_stride;
    struct brw_bo *src_bo =
       blorp_get_client_bo(brw, width, height, depth,
@@ -1059,13 +1042,6 @@ brw_blorp_download_miptree(struct brw_context *brw,
       return false;
    }
 
-   /* This function relies on blorp_blit to download the pixel data from the
-    * miptree. But, blorp_blit doesn't support signed to unsigned or unsigned
-    * to signed integer conversions.
-    */
-   if (need_signed_unsigned_int_conversion(src_format, dst_format))
-      return false;
-
    /* We can't fetch from LUMINANCE or intensity as that would require a
     * non-trivial swizzle.
     */




More information about the mesa-commit mailing list