From a845c2bc109f87010fb81fee257a7ec060db7b27 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Tue, 9 Oct 2018 10:16:56 -0500 Subject: [PATCH] anv: Expose VK_EXT_scalar_block_layout MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Our compile already splits UBO loads into scalars and the untyped surface read messages we use for SSBO reads and writes only require dword alignment. Reviewed-by: Samuel Iglesias Gonsálvez --- src/intel/vulkan/anv_device.c | 7 +++++++ src/intel/vulkan/anv_extensions.py | 1 + 2 files changed, 8 insertions(+) diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c index ee35e013329..20533cb3cc0 100644 --- a/src/intel/vulkan/anv_device.c +++ b/src/intel/vulkan/anv_device.c @@ -922,6 +922,13 @@ void anv_GetPhysicalDeviceFeatures2( break; } + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT: { + VkPhysicalDeviceScalarBlockLayoutFeaturesEXT *features = + (VkPhysicalDeviceScalarBlockLayoutFeaturesEXT *)ext; + features->scalarBlockLayout = true; + break; + } + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES: { VkPhysicalDeviceShaderDrawParameterFeatures *features = (void *)ext; features->shaderDrawParameters = true; diff --git a/src/intel/vulkan/anv_extensions.py b/src/intel/vulkan/anv_extensions.py index e9afe06bb13..7c81228f705 100644 --- a/src/intel/vulkan/anv_extensions.py +++ b/src/intel/vulkan/anv_extensions.py @@ -122,6 +122,7 @@ EXTENSIONS = [ Extension('VK_EXT_global_priority', 1, 'device->has_context_priority'), Extension('VK_EXT_pci_bus_info', 1, True), + Extension('VK_EXT_scalar_block_layout', 1, True), Extension('VK_EXT_shader_viewport_index_layer', 1, True), Extension('VK_EXT_shader_stencil_export', 1, 'device->info.gen >= 9'), Extension('VK_EXT_vertex_attribute_divisor', 3, True), -- 2.30.2