From 378e2d241430f7d653717b9270c8b48417dcf12e Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Wed, 23 Jan 2019 10:29:11 +0100 Subject: [PATCH] radv: fix computing number of user SGPRs for streamout buffers Streamout buffers are emitted like push constants. Signed-off-by: Samuel Pitoiset Reviewed-by: Bas Nieuwenhuizen --- src/amd/vulkan/radv_nir_to_llvm.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/amd/vulkan/radv_nir_to_llvm.c b/src/amd/vulkan/radv_nir_to_llvm.c index 40812fa..7f1aa17 100644 --- a/src/amd/vulkan/radv_nir_to_llvm.c +++ b/src/amd/vulkan/radv_nir_to_llvm.c @@ -701,6 +701,9 @@ static void allocate_user_sgprs(struct radv_shader_context *ctx, if (ctx->shader_info->info.loads_push_constants) user_sgpr_count++; + if (ctx->streamout_buffers) + user_sgpr_count++; + uint32_t available_sgprs = ctx->options->chip_class >= GFX9 && stage != MESA_SHADER_COMPUTE ? 32 : 16; uint32_t remaining_sgprs = available_sgprs - user_sgpr_count; uint32_t num_desc_set = -- 2.7.4