From f8dc7e0d374c45c8291123b0da038edff23c5854 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Thu, 21 Apr 2022 10:23:11 +1000 Subject: 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 Part-of: (cherry picked from commit 4b7ba3869be3f706efc717d40535c61d5c7a20c7) --- .pick_status.json | 2 +- 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); -- cgit v1.2.3