diff options
author | Bas Nieuwenhuizen <[email protected]> | 2019-10-10 11:40:27 +0200 |
---|---|---|
committer | Bas Nieuwenhuizen <[email protected]> | 2019-10-10 13:24:16 +0000 |
commit | a9687c4e05254df52b9180aa006b7bbeb612f2fc (patch) | |
tree | 2a7e38859d0d1dc66d7a49f55eef520b7994d4e6 | |
parent | 9d17d97ee41ae9d3eb5061a4bc607e430bdae477 (diff) |
radv: Implement & enable VK_EXT_texel_buffer_alignment.
Reviewed-by: Samuel Pitoiset <[email protected]>
-rw-r--r-- | docs/relnotes/new_features.txt | 1 | ||||
-rw-r--r-- | src/amd/vulkan/radv_device.c | 15 | ||||
-rw-r--r-- | src/amd/vulkan/radv_extensions.py | 1 |
3 files changed, 17 insertions, 0 deletions
diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt index f51a9669bad..bfe0ac83493 100644 --- a/docs/relnotes/new_features.txt +++ b/docs/relnotes/new_features.txt @@ -6,3 +6,4 @@ VK_KHR_shader_clock on Intel, RADV. VK_KHR_shader_float_controls on Intel. VK_EXT_shader_subgroup_ballot on Intel. VK_EXT_shader_subgroup_vote on Intel. +VK_EXT_texel_buffer_alignment on RADV. diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index 69317a1c63c..7562f0c98e0 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -1034,6 +1034,12 @@ void radv_GetPhysicalDeviceFeatures2( features->shaderDeviceClock = false; break; } + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT: { + VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT *features = + (VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT *)ext; + features->texelBufferAlignment = true; + break; + } default: break; } @@ -1469,6 +1475,15 @@ void radv_GetPhysicalDeviceProperties2( properties->independentResolve = VK_TRUE; break; } + case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT: { + VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT *properties = + (VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT *)ext; + properties->storageTexelBufferOffsetAlignmentBytes = 4; + properties->storageTexelBufferOffsetSingleTexelAlignment = true; + properties->uniformTexelBufferOffsetAlignmentBytes = 4; + properties->uniformTexelBufferOffsetSingleTexelAlignment = true; + break; + } default: break; } diff --git a/src/amd/vulkan/radv_extensions.py b/src/amd/vulkan/radv_extensions.py index 14d139d60b4..12596df1364 100644 --- a/src/amd/vulkan/radv_extensions.py +++ b/src/amd/vulkan/radv_extensions.py @@ -134,6 +134,7 @@ EXTENSIONS = [ Extension('VK_EXT_shader_stencil_export', 1, True), Extension('VK_EXT_shader_subgroup_ballot', 1, True), Extension('VK_EXT_shader_subgroup_vote', 1, True), + Extension('VK_EXT_texel_buffer_alignment', 1, True), Extension('VK_EXT_transform_feedback', 1, True), Extension('VK_EXT_vertex_attribute_divisor', 3, True), Extension('VK_EXT_ycbcr_image_arrays', 1, True), |