Module: Mesa Branch: main Commit: 2c420fcf4061b6cb8d4046c913ae10c1c8d9991d URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=2c420fcf4061b6cb8d4046c913ae10c1c8d9991d
Author: Iago Toral Quiroga <ito...@igalia.com> Date: Wed May 18 13:59:24 2022 +0200 v3dv: expose VK_KHR_vulkan_memory_model Reviewed-by: Alejandro PiƱeiro <apinhe...@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16602> --- docs/features.txt | 2 +- src/broadcom/vulkan/v3dv_device.c | 5 +++++ src/broadcom/vulkan/v3dv_pipeline.c | 2 ++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/docs/features.txt b/docs/features.txt index d9e67c87abe..ba9d5778ac0 100644 --- a/docs/features.txt +++ b/docs/features.txt @@ -462,7 +462,7 @@ Vulkan 1.2 -- all DONE: anv, vn VK_KHR_spirv_1_4 DONE (anv, lvp, radv, tu, v3dv, vn) VK_KHR_timeline_semaphore DONE (anv, lvp, radv, tu, v3dv, vn) VK_KHR_uniform_buffer_standard_layout DONE (anv, lvp, radv, tu, v3dv, vn) - VK_KHR_vulkan_memory_model DONE (anv, lvp, radv, tu, vn) + VK_KHR_vulkan_memory_model DONE (anv, lvp, radv, tu, v3dv, vn) VK_EXT_descriptor_indexing DONE (anv/gen9+, radv, tu, vn) VK_EXT_host_query_reset DONE (anv, lvp, radv, tu, v3dv, vn) VK_EXT_sampler_filter_minmax DONE (anv/gen9+, lvp, radv, tu, vn) diff --git a/src/broadcom/vulkan/v3dv_device.c b/src/broadcom/vulkan/v3dv_device.c index d6a7df84a62..b783a28da92 100644 --- a/src/broadcom/vulkan/v3dv_device.c +++ b/src/broadcom/vulkan/v3dv_device.c @@ -152,6 +152,7 @@ get_device_extensions(const struct v3dv_physical_device *device, .KHR_incremental_present = true, #endif .KHR_variable_pointers = true, + .KHR_vulkan_memory_model = true, .EXT_4444_formats = true, .EXT_color_write_enable = true, .EXT_custom_border_color = true, @@ -1192,6 +1193,10 @@ v3dv_GetPhysicalDeviceFeatures2(VkPhysicalDevice physicalDevice, .storagePushConstant8 = true, .imagelessFramebuffer = true, .timelineSemaphore = true, + + .vulkanMemoryModel = true, + .vulkanMemoryModelDeviceScope = true, + .vulkanMemoryModelAvailabilityVisibilityChains = true, }; VkPhysicalDeviceVulkan11Features vk11 = { diff --git a/src/broadcom/vulkan/v3dv_pipeline.c b/src/broadcom/vulkan/v3dv_pipeline.c index 3cba7834680..63a8efe984d 100644 --- a/src/broadcom/vulkan/v3dv_pipeline.c +++ b/src/broadcom/vulkan/v3dv_pipeline.c @@ -191,6 +191,8 @@ static const struct spirv_to_nir_options default_spirv_options = { .storage_16bit = true, .subgroup_basic = true, .variable_pointers = true, + .vk_memory_model = true, + .vk_memory_model_device_scope = true, }, .ubo_addr_format = nir_address_format_32bit_index_offset, .ssbo_addr_format = nir_address_format_32bit_index_offset,