diff options
author | Dave Airlie <airlied@redhat.com> | 2022-04-21 10:23:11 +1000 |
---|---|---|
committer | Dylan Baker <dylan.c.baker@intel.com> | 2022-04-21 11:20:20 -0700 |
commit | f8dc7e0d374c45c8291123b0da038edff23c5854 (patch) | |
tree | 545416b49e38aa589124fd6df968231a04b34ea6 | |
parent | 55d9bd1b648d1608a15d77d6b16babe8194fa00f (diff) |
util/stencil: fix stencil fallback blit shader texture types.
src/gallium/auxiliary/tgsi/tgsi_scan.c:287: scan_src_operand: Assertion `info->sampler_targets[index] == target' failed.
assert was being triggered by
GTF-GL46.gtf30.GL3Tests.framebuffer_blit.framebuffer_blit_functionality_multisampled_to_singlesampled_blit
using the stencil fallback with zink.
Fixes: f05dfddeb1ad ("u_blitter: fix stencil blit fallback for crocus.")
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16069>
(cherry picked from commit 4b7ba3869be3f706efc717d40535c61d5c7a20c7)
-rw-r--r-- | .pick_status.json | 2 | ||||
-rw-r--r-- | src/gallium/auxiliary/util/u_simple_shaders.c | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/.pick_status.json b/.pick_status.json index 168b8ee25a8..517799612d3 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -121,7 +121,7 @@ "description": "util/stencil: fix stencil fallback blit shader texture types.", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "f05dfddeb1adad9f6d4ca18f5e066b3ae23d3e28" }, diff --git a/src/gallium/auxiliary/util/u_simple_shaders.c b/src/gallium/auxiliary/util/u_simple_shaders.c index f46b319789d..07c667b2184 100644 --- a/src/gallium/auxiliary/util/u_simple_shaders.c +++ b/src/gallium/auxiliary/util/u_simple_shaders.c @@ -1189,7 +1189,7 @@ util_make_fs_stencil_blit(struct pipe_context *pipe, bool msaa_src) "FRAG\n" "DCL IN[0], GENERIC[0], LINEAR\n" "DCL SAMP[0]\n" - "DCL SVIEW[0], 2D, UINT\n" + "DCL SVIEW[0], %s, UINT\n" "DCL CONST[0][0]\n" "DCL TEMP[0]\n" @@ -1208,7 +1208,7 @@ util_make_fs_stencil_blit(struct pipe_context *pipe, bool msaa_src) enum tgsi_texture_type tgsi_tex = msaa_src ? TGSI_TEXTURE_2D_MSAA : TGSI_TEXTURE_2D; - sprintf(text, shader_templ, tgsi_texture_names[tgsi_tex]); + sprintf(text, shader_templ, tgsi_texture_names[tgsi_tex], tgsi_texture_names[tgsi_tex]); if (!tgsi_text_translate(text, tokens, ARRAY_SIZE(tokens))) { assert(0); |