mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-01-24 06:33:50 +08:00
radv/aco: enable VK_KHR_memory_model
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Daniel Schürmann <daniel@schuermann.dev> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6063>
This commit is contained in:
parent
389c95a889
commit
da38e99eda
@ -24,3 +24,4 @@ RADV_DEBUG=llvm option to enable LLVM backend for RADV
|
||||
VK_EXT_image_robustness for ANV
|
||||
VK_EXT_shader_atomic_float on ANV
|
||||
VK_EXT_4444_formats on ANV and RADV.
|
||||
VK_KHR_memory_model on RADV/ACO.
|
||||
|
@ -1041,8 +1041,8 @@ radv_get_physical_device_features_1_2(struct radv_physical_device *pdevice,
|
||||
f->bufferDeviceAddress = true;
|
||||
f->bufferDeviceAddressCaptureReplay = false;
|
||||
f->bufferDeviceAddressMultiDevice = false;
|
||||
f->vulkanMemoryModel = false;
|
||||
f->vulkanMemoryModelDeviceScope = false;
|
||||
f->vulkanMemoryModel = !pdevice->use_llvm;
|
||||
f->vulkanMemoryModelDeviceScope = !pdevice->use_llvm;
|
||||
f->vulkanMemoryModelAvailabilityVisibilityChains = false;
|
||||
f->shaderOutputViewportIndex = true;
|
||||
f->shaderOutputLayer = true;
|
||||
@ -1366,6 +1366,14 @@ void radv_GetPhysicalDeviceFeatures2(
|
||||
features-> pipelineCreationCacheControl = true;
|
||||
break;
|
||||
}
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR: {
|
||||
VkPhysicalDeviceVulkanMemoryModelFeaturesKHR *features =
|
||||
(VkPhysicalDeviceVulkanMemoryModelFeaturesKHR *)ext;
|
||||
CORE_FEATURE(1, 2, vulkanMemoryModel);
|
||||
CORE_FEATURE(1, 2, vulkanMemoryModelDeviceScope);
|
||||
CORE_FEATURE(1, 2, vulkanMemoryModelAvailabilityVisibilityChains);
|
||||
break;
|
||||
}
|
||||
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT: {
|
||||
VkPhysicalDeviceExtendedDynamicStateFeaturesEXT *features =
|
||||
(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT *) ext;
|
||||
|
@ -110,6 +110,7 @@ EXTENSIONS = [
|
||||
Extension('VK_KHR_timeline_semaphore', 2, 'device->rad_info.has_syncobj_wait_for_submit'),
|
||||
Extension('VK_KHR_uniform_buffer_standard_layout', 1, True),
|
||||
Extension('VK_KHR_variable_pointers', 1, True),
|
||||
Extension('VK_KHR_vulkan_memory_model', 3, '!device->use_llvm'),
|
||||
Extension('VK_KHR_wayland_surface', 6, 'VK_USE_PLATFORM_WAYLAND_KHR'),
|
||||
Extension('VK_KHR_xcb_surface', 6, 'VK_USE_PLATFORM_XCB_KHR'),
|
||||
Extension('VK_KHR_xlib_surface', 6, 'VK_USE_PLATFORM_XLIB_KHR'),
|
||||
|
@ -409,6 +409,8 @@ radv_shader_compile_to_nir(struct radv_device *device,
|
||||
.tessellation = true,
|
||||
.transform_feedback = true,
|
||||
.variable_pointers = true,
|
||||
.vk_memory_model = !device->physical_device->use_llvm,
|
||||
.vk_memory_model_device_scope = !device->physical_device->use_llvm,
|
||||
},
|
||||
.ubo_addr_format = nir_address_format_32bit_index_offset,
|
||||
.ssbo_addr_format = nir_address_format_32bit_index_offset,
|
||||
|
Loading…
Reference in New Issue
Block a user