From e9c1eaa535c523668b0a74c5f31f3223fb951ec5 Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Tue, 16 May 2023 09:25:17 +0300 Subject: [PATCH] anv: only disable mesh when enabled at the VkDevice level Saving ourselves some instructions since it's not going to get used. Signed-off-by: Lionel Landwerlin Reviewed-by: Rohan Garg Reviewed-by: Ivan Briano Part-of: --- src/intel/vulkan/genX_gpu_memcpy.c | 3 ++- src/intel/vulkan/genX_pipeline.c | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/intel/vulkan/genX_gpu_memcpy.c b/src/intel/vulkan/genX_gpu_memcpy.c index 90b6d49..1a8eb58 100644 --- a/src/intel/vulkan/genX_gpu_memcpy.c +++ b/src/intel/vulkan/genX_gpu_memcpy.c @@ -76,7 +76,8 @@ emit_common_so_memcpy(struct anv_batch *batch, struct anv_device *device, /* Disable Mesh, we can't have this and streamout enabled at the same * time. */ - if (device->info->has_mesh_shading) { + if (device->vk.enabled_extensions.NV_mesh_shader || + device->vk.enabled_extensions.EXT_mesh_shader) { anv_batch_emit(batch, GENX(3DSTATE_MESH_CONTROL), mesh); anv_batch_emit(batch, GENX(3DSTATE_TASK_CONTROL), task); } diff --git a/src/intel/vulkan/genX_pipeline.c b/src/intel/vulkan/genX_pipeline.c index 81b2ba5..0b95311 100644 --- a/src/intel/vulkan/genX_pipeline.c +++ b/src/intel/vulkan/genX_pipeline.c @@ -1872,8 +1872,8 @@ genX(graphics_pipeline_emit)(struct anv_graphics_pipeline *pipeline, #if GFX_VERx10 >= 125 const struct anv_device *device = pipeline->base.base.device; /* Disable Mesh. */ - if (device->physical->vk.supported_extensions.NV_mesh_shader || - device->physical->vk.supported_extensions.EXT_mesh_shader) { + if (device->vk.enabled_extensions.NV_mesh_shader || + device->vk.enabled_extensions.EXT_mesh_shader) { struct anv_batch *batch = &pipeline->base.base.batch; anv_batch_emit(batch, GENX(3DSTATE_MESH_CONTROL), zero); -- 2.7.4