summaryrefslogtreecommitdiffstats
path: root/src/amd/vulkan/radv_device.c
diff options
context:
space:
mode:
authorBas Nieuwenhuizen <[email protected]>2017-07-19 23:55:58 +0200
committerBas Nieuwenhuizen <[email protected]>2017-07-20 09:13:01 +0200
commit21d777a122dc73481785e6f0ae050932b933d9ad (patch)
tree3190cae091ba0931f8ccfc10239a212333eaa7d7 /src/amd/vulkan/radv_device.c
parent31469c0265645665815ebca7219fe6e5e5d535eb (diff)
radv: Add support for VK_KHR_variable_pointers.
Just a trivial enable. Signed-off-by: Bas Nieuwenhuizen <[email protected]> Reviewed-by: Connor Abbott <[email protected]> Acked-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_device.c')
-rw-r--r--src/amd/vulkan/radv_device.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index e3655dabe3a..d87be66da8b 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -157,6 +157,10 @@ static const VkExtensionProperties common_device_extensions[] = {
.extensionName = VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME,
.specVersion = 1,
},
+ {
+ .extensionName = VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME,
+ .specVersion = 1,
+ },
};
static VkResult
@@ -589,6 +593,18 @@ void radv_GetPhysicalDeviceFeatures2KHR(
VkPhysicalDevice physicalDevice,
VkPhysicalDeviceFeatures2KHR *pFeatures)
{
+ vk_foreach_struct(ext, pFeatures->pNext) {
+ switch (ext->sType) {
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR: {
+ VkPhysicalDeviceVariablePointerFeaturesKHR *features = (void *)ext;
+ features->variablePointersStorageBuffer = true;
+ features->variablePointers = false;
+ break;
+ }
+ default:
+ break;
+ }
+ }
return radv_GetPhysicalDeviceFeatures(physicalDevice, &pFeatures->features);
}