From 136d49054bdd8ef9a498ad8777066c39ddb4f00a Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Thu, 13 Jul 2023 12:45:57 +1000 Subject: [PATCH] nvk: fix transform feedback crash when optimiser removes things. This optimise loop can remove stuff, which causes this to crash, just exit early. Part-of: --- src/nouveau/vulkan/nvk_shader.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/nouveau/vulkan/nvk_shader.c b/src/nouveau/vulkan/nvk_shader.c index 0c4ec6e8b94..eb19ac9aae6 100644 --- a/src/nouveau/vulkan/nvk_shader.c +++ b/src/nouveau/vulkan/nvk_shader.c @@ -933,6 +933,9 @@ nvk_fill_transform_feedback_state(struct nir_shader *nir, } memset(xfb->varying_index, 0xff, sizeof(xfb->varying_index)); /* = skip */ + if (info->numOutputs == 0) + return xfb; + for (uint32_t i = 0; i < nx->output_count; ++i) { const nir_xfb_output_info output = nx->outputs[i]; const uint8_t b = output.buffer;