Mesa (staging/21.0): Revert "gallium/util: Fix depth/stencil blit shaders"

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu May 6 16:16:18 UTC 2021


Module: Mesa
Branch: staging/21.0
Commit: aeed24268d3c0ea08731194480eac15432614d00
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=aeed24268d3c0ea08731194480eac15432614d00

Author: Boris Brezillon <boris.brezillon at collabora.com>
Date:   Tue May  4 08:31:38 2021 +0200

Revert "gallium/util: Fix depth/stencil blit shaders"

This reverts commit 7ca72f172678116d29d254b786a9422b864aef3d.
Unlike what's stated in this commit, the depth or stencil components
have to be replicated on all channels, as specified in the
"Texture Sampling and Texture Formats" section of the TGSI doc
(docs/gallium/tgsi.rst).

Reviewed-by: Erik Faye-Lund <erik.faye-lund at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10649>
(cherry picked from commit 6cac9c748eb81105b5cd7df32060ee8aae2b1e5f)

---

 .pick_status.json                             |  2 +-
 src/gallium/auxiliary/util/u_simple_shaders.c | 20 +++++++++-----------
 2 files changed, 10 insertions(+), 12 deletions(-)

diff --git a/.pick_status.json b/.pick_status.json
index c0238b26595..76a63b75bc1 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -157,7 +157,7 @@
         "description": "Revert \"gallium/util: Fix depth/stencil blit shaders\"",
         "nominated": true,
         "nomination_type": 2,
-        "resolution": 0,
+        "resolution": 1,
         "master_sha": null,
         "because_sha": "7ca72f172678116d29d254b786a9422b864aef3d"
     },
diff --git a/src/gallium/auxiliary/util/u_simple_shaders.c b/src/gallium/auxiliary/util/u_simple_shaders.c
index a905150376d..d2f77c47520 100644
--- a/src/gallium/auxiliary/util/u_simple_shaders.c
+++ b/src/gallium/auxiliary/util/u_simple_shaders.c
@@ -423,12 +423,12 @@ util_make_fs_blit_zs(struct pipe_context *pipe, unsigned zs_mask,
                              TGSI_RETURN_TYPE_UINT,
                              TGSI_RETURN_TYPE_UINT);
 
-      ureg_load_tex(ureg, ureg_writemask(tmp, TGSI_WRITEMASK_Y), coord,
+      ureg_load_tex(ureg, ureg_writemask(tmp, TGSI_WRITEMASK_X), coord,
                     stencil_sampler, tex_target, load_level_zero, use_txf);
 
       stencil = ureg_DECL_output(ureg, TGSI_SEMANTIC_STENCIL, 0);
       ureg_MOV(ureg, ureg_writemask(stencil, TGSI_WRITEMASK_Y),
-               ureg_scalar(ureg_src(tmp), TGSI_SWIZZLE_Y));
+               ureg_scalar(ureg_src(tmp), TGSI_SWIZZLE_X));
    }
 
    ureg_END(ureg);
@@ -530,7 +530,6 @@ util_make_fs_blit_msaa_gen(struct pipe_context *pipe,
                            const char *samp_type,
                            const char *output_semantic,
                            const char *output_mask,
-                           const char *swizzle,
                            const char *conversion_decl,
                            const char *conversion)
 {
@@ -546,7 +545,7 @@ util_make_fs_blit_msaa_gen(struct pipe_context *pipe,
          "F2U TEMP[0], IN[0]\n"
          "TXF TEMP[0], TEMP[0], SAMP[0], %s\n"
          "%s"
-         "MOV OUT[0]%s, TEMP[0]%s\n"
+         "MOV OUT[0]%s, TEMP[0]\n"
          "END\n";
 
    const char *type = tgsi_texture_names[tgsi_tex];
@@ -558,7 +557,7 @@ util_make_fs_blit_msaa_gen(struct pipe_context *pipe,
           tgsi_tex == TGSI_TEXTURE_2D_ARRAY_MSAA);
 
    snprintf(text, sizeof(text), shader_templ, type, samp_type,
-            output_semantic, conversion_decl, type, conversion, output_mask, swizzle);
+            output_semantic, conversion_decl, type, conversion, output_mask);
 
    if (!tgsi_text_translate(text, tokens, ARRAY_SIZE(tokens))) {
       puts(text);
@@ -609,7 +608,7 @@ util_make_fs_blit_msaa_color(struct pipe_context *pipe,
    }
 
    return util_make_fs_blit_msaa_gen(pipe, tgsi_tex, samp_type,
-                                     "COLOR[0]", "", "", conversion_decl,
+                                     "COLOR[0]", "", conversion_decl,
                                      conversion);
 }
 
@@ -624,7 +623,7 @@ util_make_fs_blit_msaa_depth(struct pipe_context *pipe,
                              enum tgsi_texture_type tgsi_tex)
 {
    return util_make_fs_blit_msaa_gen(pipe, tgsi_tex, "FLOAT",
-                                     "POSITION", ".z", ".xxxx", "", "");
+                                     "POSITION", ".z", "", "");
 }
 
 
@@ -638,7 +637,7 @@ util_make_fs_blit_msaa_stencil(struct pipe_context *pipe,
                                enum tgsi_texture_type tgsi_tex)
 {
    return util_make_fs_blit_msaa_gen(pipe, tgsi_tex, "UINT",
-                                     "STENCIL", ".y", "", "", "");
+                                     "STENCIL", ".y", "", "");
 }
 
 
@@ -661,11 +660,10 @@ util_make_fs_blit_msaa_depthstencil(struct pipe_context *pipe,
          "DCL SVIEW[1], %s, UINT\n"
          "DCL OUT[0], POSITION\n"
          "DCL OUT[1], STENCIL\n"
-         "DCL TEMP[0..1]\n"
+         "DCL TEMP[0]\n"
 
          "F2U TEMP[0], IN[0]\n"
-         "TXF TEMP[1], TEMP[0], SAMP[0], %s\n"
-         "MOV OUT[0].z, TEMP[1].xxxx\n"
+         "TXF OUT[0].z, TEMP[0], SAMP[0], %s\n"
          "TXF OUT[1].y, TEMP[0], SAMP[1], %s\n"
          "END\n";
 



More information about the mesa-commit mailing list