nvk: Call ensure_slm for nvk_cmd_dispatch_shader
Internal shaders can also use slm, so we need to allocate it correctly.
This fixes
dEQP-VK.dgc.ext.compute.misc.max_pc_range_256_full_preprocess_with_execution_set
with NAK_DEBUG=spill
Fixes: 105bdf2e36 ("nvk: Add a helper for dispatching compute shaders")
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35143>
This commit is contained in:
@@ -305,6 +305,8 @@ nvk_cmd_dispatch_shader(struct nvk_cmd_buffer *cmd,
|
||||
uint32_t groupCountY,
|
||||
uint32_t groupCountZ)
|
||||
{
|
||||
struct nvk_device *dev = nvk_cmd_buffer_device(cmd);
|
||||
|
||||
struct nvk_root_descriptor_table root = {
|
||||
.cs.group_count = {
|
||||
groupCountX,
|
||||
@@ -324,6 +326,11 @@ nvk_cmd_dispatch_shader(struct nvk_cmd_buffer *cmd,
|
||||
return;
|
||||
}
|
||||
|
||||
if (shader != NULL) {
|
||||
nvk_device_ensure_slm(dev, shader->info.slm_size,
|
||||
shader->info.crs_size);
|
||||
}
|
||||
|
||||
struct nv_push *p = nvk_cmd_buffer_push(cmd, 8);
|
||||
|
||||
/* Internal shaders don't want conditional rendering */
|
||||
|
||||
Reference in New Issue
Block a user