From 20a8a29ffc48baa629d8bd7e9ae430b7e6ca94a2 Mon Sep 17 00:00:00 2001 From: Gert Wollny Date: Wed, 31 May 2023 17:45:03 +0200 Subject: [PATCH] r600/sfn: Don't rewrite TESS_EVAL inner tess level outputs Fixes: 5cd3e3950 (r600/sfn: Make sure all components are usable when lowering TF inputs) Signed-off-by: Gert Wollny Part-of: (cherry picked from commit 9ace53f3cc1b6d37ddc09f0231edb6a61b9aa08c) --- .pick_status.json | 2 +- src/gallium/drivers/r600/sfn/sfn_nir_lower_tess_io.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index b87752dd9c0..b1b51dabddb 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -3487,7 +3487,7 @@ "description": "r600/sfn: Don't rewrite TESS_EVAL inner tess level outputs", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "5cd3e395037250946ba2519600836341df02c8ca" }, diff --git a/src/gallium/drivers/r600/sfn/sfn_nir_lower_tess_io.cpp b/src/gallium/drivers/r600/sfn/sfn_nir_lower_tess_io.cpp index 0e1a6eed1e0..f5e6a78fd8b 100644 --- a/src/gallium/drivers/r600/sfn/sfn_nir_lower_tess_io.cpp +++ b/src/gallium/drivers/r600/sfn/sfn_nir_lower_tess_io.cpp @@ -456,7 +456,7 @@ r600_lower_tess_io_impl(nir_builder *b, nir_instr *instr, enum pipe_prim_type pr tf->src[0] = nir_src_for_ssa(addr_outer); nir_ssa_dest_init(&tf->instr, &tf->dest, tf->num_components, 32, NULL); nir_builder_instr_insert(b, &tf->instr); - if (ncomps < 4) { + if (ncomps < 4 && b->shader->info.stage != MESA_SHADER_TESS_EVAL) { auto undef = nir_ssa_undef(b, 1, 32); nir_ssa_def *srcs[4] = {undef, undef, undef, undef}; for (unsigned i = 0; i < ncomps; ++i)