diff --git a/.pick_status.json b/.pick_status.json index 10112b08f52..8a9aeafe86e 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -67,7 +67,7 @@ "description": "radv/llvm: Fix reporting LDS stats of tess control shaders.", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "cf89bdb9ba9c7a7ba39d142ee3c83e0379c2092a" }, diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c index 4810101420d..95a1e425522 100644 --- a/src/amd/vulkan/radv_shader.c +++ b/src/amd/vulkan/radv_shader.c @@ -1199,6 +1199,10 @@ radv_shader_variant_create(struct radv_device *device, unsigned alloc_granularity = device->physical_device->rad_info.chip_class >= GFX7 ? 512 : 256; config.lds_size = align(rtld_binary.lds_size, alloc_granularity) / alloc_granularity; } + if (!config.lds_size && binary->stage == MESA_SHADER_TESS_CTRL) { + /* This is used for reporting LDS statistics */ + config.lds_size = binary->info.tcs.num_lds_blocks; + } variant->code_size = rtld_binary.rx_size; variant->exec_size = rtld_binary.exec_size;