Mesa (master): radv/llvm: enable VK_KHR_memory_model

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Aug 5 10:01:48 UTC 2020


Module: Mesa
Branch: master
Commit: 6e2e77557ee377506c6d9ce6a47a1a6046ebe35a
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6e2e77557ee377506c6d9ce6a47a1a6046ebe35a

Author: Rhys Perry <pendingchaos02 at gmail.com>
Date:   Thu Jul 30 11:07:22 2020 +0100

radv/llvm: enable VK_KHR_memory_model

Signed-off-by: Rhys Perry <pendingchaos02 at gmail.com>
Reviewed-by: Daniel Schürmann <daniel at schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6063>

---

 docs/relnotes/new_features.txt    | 2 +-
 src/amd/vulkan/radv_device.c      | 4 ++--
 src/amd/vulkan/radv_extensions.py | 2 +-
 src/amd/vulkan/radv_pipeline.c    | 2 +-
 src/amd/vulkan/radv_shader.c      | 4 ++--
 5 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt
index 26ee559d4bf..49e9fedede8 100644
--- a/docs/relnotes/new_features.txt
+++ b/docs/relnotes/new_features.txt
@@ -24,4 +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.
+VK_KHR_memory_model on RADV.
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index e572891d731..00df3a97dd6 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -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 = !pdevice->use_llvm;
-	f->vulkanMemoryModelDeviceScope = !pdevice->use_llvm;
+	f->vulkanMemoryModel = true;
+	f->vulkanMemoryModelDeviceScope = true;
 	f->vulkanMemoryModelAvailabilityVisibilityChains = false;
 	f->shaderOutputViewportIndex = true;
 	f->shaderOutputLayer = true;
diff --git a/src/amd/vulkan/radv_extensions.py b/src/amd/vulkan/radv_extensions.py
index 45d24170bbb..e5ab9d37a73 100644
--- a/src/amd/vulkan/radv_extensions.py
+++ b/src/amd/vulkan/radv_extensions.py
@@ -110,7 +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_vulkan_memory_model',               3, True),
     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'),
diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c
index ad5d97d7463..6d4df832fe5 100644
--- a/src/amd/vulkan/radv_pipeline.c
+++ b/src/amd/vulkan/radv_pipeline.c
@@ -2943,8 +2943,8 @@ VkResult radv_create_shaders(struct radv_pipeline *pipeline,
 				           nir_lower_non_uniform_ssbo_access |
 				           nir_lower_non_uniform_texture_access |
 				           nir_lower_non_uniform_image_access);
-				NIR_PASS_V(nir[i], nir_lower_memory_model);
 			}
+			NIR_PASS_V(nir[i], nir_lower_memory_model);
 		}
 	}
 
diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c
index 180cb0c9708..f54b2e2a806 100644
--- a/src/amd/vulkan/radv_shader.c
+++ b/src/amd/vulkan/radv_shader.c
@@ -409,8 +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,
+				.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,



More information about the mesa-commit mailing list