From 67faf6dfbdadfc9d19859bcb9fe6dfc77d2edb78 Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Mon, 24 Nov 2025 11:37:40 +0200 Subject: [PATCH] spirv: fix printf generation Not having the uses_printf will drop the printf info in serialization. Signed-off-by: Lionel Landwerlin Cc: mesa-stable Reviewed-by: Alyssa Rosenzweig Part-of: --- src/compiler/spirv/spirv_to_nir.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/compiler/spirv/spirv_to_nir.c b/src/compiler/spirv/spirv_to_nir.c index be4098001d8..7d4b9a7d21f 100644 --- a/src/compiler/spirv/spirv_to_nir.c +++ b/src/compiler/spirv/spirv_to_nir.c @@ -829,6 +829,7 @@ vtn_handle_debug_printf(struct vtn_builder *b, SpvOp ext_opcode, struct vtn_value *format = vtn_value(b, w[5], vtn_value_type_string); + b->shader->info.uses_printf = true; b->shader->printf_info_count++; b->shader->printf_info = reralloc(b->shader, b->shader->printf_info, @@ -846,7 +847,7 @@ vtn_handle_debug_printf(struct vtn_builder *b, SpvOp ext_opcode, .string_size = strlen(format->str) + 1, }; - uint32_t info_index = b->shader->printf_info_count - 1; + uint32_t info_index = b->shader->printf_info_count; if (argc) { glsl_struct_field *fields = calloc(argc, sizeof(glsl_struct_field));