radv: enable prologs/epilogs in-memory cache for shader objects

Shader objects always use VS prologs/PS epilogs/TCS epilogs.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26930>
This commit is contained in:
Samuel Pitoiset
2023-03-28 11:37:30 +02:00
committed by Marge Bot
parent 9351a4c51a
commit de1805faed

View File

@@ -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;
}