diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index 9169f99b485..4dcc4725dd5 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -710,7 +710,7 @@ radv_CreateDevice(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo *pCr bool attachment_vrs_enabled = false; bool image_float32_atomics = false; bool vs_prologs = false; - UNUSED bool tcs_epilogs = false; /* TODO: Enable for shader object */ + bool tcs_epilogs = false; bool ps_epilogs = false; bool global_bo_list = false; bool image_2d_view_of_3d = false; @@ -841,6 +841,15 @@ radv_CreateDevice(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo *pCr mesh_shader_queries = true; break; } + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT: { + const VkPhysicalDeviceShaderObjectFeaturesEXT *features = (const void *)ext; + if (features->shaderObject) { + vs_prologs = true; + tcs_epilogs = true; + ps_epilogs = true; + } + break; + } default: break; }