summaryrefslogtreecommitdiff
path: root/lib/mesa/src/vulkan/util/vk_device.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/mesa/src/vulkan/util/vk_device.c')
-rw-r--r--lib/mesa/src/vulkan/util/vk_device.c462
1 files changed, 3 insertions, 459 deletions
diff --git a/lib/mesa/src/vulkan/util/vk_device.c b/lib/mesa/src/vulkan/util/vk_device.c
index e3617507b..cfaebc58d 100644
--- a/lib/mesa/src/vulkan/util/vk_device.c
+++ b/lib/mesa/src/vulkan/util/vk_device.c
@@ -25,10 +25,7 @@
#include "vk_common_entrypoints.h"
#include "vk_instance.h"
-#include "vk_log.h"
#include "vk_physical_device.h"
-#include "vk_queue.h"
-#include "vk_util.h"
#include "util/hash_table.h"
#include "util/ralloc.h"
@@ -63,35 +60,21 @@ vk_device_init(struct vk_device *device,
}
if (idx >= VK_DEVICE_EXTENSION_COUNT)
- return vk_errorf(physical_device, VK_ERROR_EXTENSION_NOT_PRESENT,
- "%s not supported",
- pCreateInfo->ppEnabledExtensionNames[i]);
+ return VK_ERROR_EXTENSION_NOT_PRESENT;
if (!physical_device->supported_extensions.extensions[idx])
- return vk_errorf(physical_device, VK_ERROR_EXTENSION_NOT_PRESENT,
- "%s not supported",
- pCreateInfo->ppEnabledExtensionNames[i]);
+ return VK_ERROR_EXTENSION_NOT_PRESENT;
#ifdef ANDROID
if (!vk_android_allowed_device_extensions.extensions[idx])
- return vk_errorf(physical_device, VK_ERROR_EXTENSION_NOT_PRESENT,
- "%s not supported",
- pCreateInfo->ppEnabledExtensionNames[i]);
+ return VK_ERROR_EXTENSION_NOT_PRESENT;
#endif
device->enabled_extensions.extensions[idx] = true;
}
- VkResult result =
- vk_physical_device_check_device_features(physical_device,
- pCreateInfo);
- if (result != VK_SUCCESS)
- return result;
-
p_atomic_set(&device->private_data_next_index, 0);
- list_inithead(&device->queues);
-
#ifdef ANDROID
mtx_init(&device->swapchain_private_mtx, mtx_plain);
device->swapchain_private = NULL;
@@ -103,9 +86,6 @@ vk_device_init(struct vk_device *device,
void
vk_device_finish(UNUSED struct vk_device *device)
{
- /* Drivers should tear down their own queues */
- assert(list_is_empty(&device->queues));
-
#ifdef ANDROID
if (device->swapchain_private) {
hash_table_foreach(device->swapchain_private, entry)
@@ -167,35 +147,6 @@ vk_common_GetDeviceQueue(VkDevice _device,
}
VKAPI_ATTR void VKAPI_CALL
-vk_common_GetDeviceQueue2(VkDevice _device,
- const VkDeviceQueueInfo2 *pQueueInfo,
- VkQueue *pQueue)
-{
- VK_FROM_HANDLE(vk_device, device, _device);
-
- struct vk_queue *queue = NULL;
- vk_foreach_queue(iter, device) {
- if (iter->queue_family_index == pQueueInfo->queueFamilyIndex &&
- iter->index_in_family == pQueueInfo->queueIndex) {
- queue = iter;
- break;
- }
- }
-
- /* From the Vulkan 1.1.70 spec:
- *
- * "The queue returned by vkGetDeviceQueue2 must have the same flags
- * value from this structure as that used at device creation time in a
- * VkDeviceQueueCreateInfo instance. If no matching flags were specified
- * at device creation time then pQueue will return VK_NULL_HANDLE."
- */
- if (queue && queue->flags == pQueueInfo->flags)
- *pQueue = vk_queue_to_handle(queue);
- else
- *pQueue = VK_NULL_HANDLE;
-}
-
-VKAPI_ATTR void VKAPI_CALL
vk_common_GetBufferMemoryRequirements(VkDevice _device,
VkBuffer buffer,
VkMemoryRequirements *pMemoryRequirements)
@@ -268,410 +219,3 @@ vk_common_BindImageMemory(VkDevice _device,
return device->dispatch_table.BindImageMemory2(_device, 1, &bind);
}
-
-VKAPI_ATTR void VKAPI_CALL
-vk_common_GetImageSparseMemoryRequirements(VkDevice _device,
- VkImage image,
- uint32_t *pSparseMemoryRequirementCount,
- VkSparseImageMemoryRequirements *pSparseMemoryRequirements)
-{
- VK_FROM_HANDLE(vk_device, device, _device);
-
- VkImageSparseMemoryRequirementsInfo2 info = {
- .sType = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2,
- .image = image,
- };
-
- if (!pSparseMemoryRequirements) {
- device->dispatch_table.GetImageSparseMemoryRequirements2(_device,
- &info,
- pSparseMemoryRequirementCount,
- NULL);
- return;
- }
-
- STACK_ARRAY(VkSparseImageMemoryRequirements2, mem_reqs2, *pSparseMemoryRequirementCount);
-
- for (unsigned i = 0; i < *pSparseMemoryRequirementCount; ++i) {
- mem_reqs2[i].sType = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2;
- mem_reqs2[i].pNext = NULL;
- }
-
- device->dispatch_table.GetImageSparseMemoryRequirements2(_device,
- &info,
- pSparseMemoryRequirementCount,
- mem_reqs2);
-
- for (unsigned i = 0; i < *pSparseMemoryRequirementCount; ++i)
- pSparseMemoryRequirements[i] = mem_reqs2[i].memoryRequirements;
-
- STACK_ARRAY_FINISH(mem_reqs2);
-}
-
-VKAPI_ATTR VkResult VKAPI_CALL
-vk_common_DeviceWaitIdle(VkDevice _device)
-{
- VK_FROM_HANDLE(vk_device, device, _device);
- const struct vk_device_dispatch_table *disp = &device->dispatch_table;
-
- vk_foreach_queue(queue, device) {
- VkResult result = disp->QueueWaitIdle(vk_queue_to_handle(queue));
- if (result != VK_SUCCESS)
- return result;
- }
-
- return VK_SUCCESS;
-}
-
-static void
-copy_vk_struct_guts(VkBaseOutStructure *dst, VkBaseInStructure *src, size_t struct_size)
-{
- STATIC_ASSERT(sizeof(*dst) == sizeof(*src));
- memcpy(dst + 1, src + 1, struct_size - sizeof(VkBaseOutStructure));
-}
-
-#define CORE_FEATURE(feature) features->feature = core->feature
-
-bool
-vk_get_physical_device_core_1_1_feature_ext(struct VkBaseOutStructure *ext,
- const VkPhysicalDeviceVulkan11Features *core)
-{
-
- switch (ext->sType) {
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES: {
- VkPhysicalDevice16BitStorageFeatures *features = (void *)ext;
- CORE_FEATURE(storageBuffer16BitAccess);
- CORE_FEATURE(uniformAndStorageBuffer16BitAccess);
- CORE_FEATURE(storagePushConstant16);
- CORE_FEATURE(storageInputOutput16);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES: {
- VkPhysicalDeviceMultiviewFeatures *features = (void *)ext;
- CORE_FEATURE(multiview);
- CORE_FEATURE(multiviewGeometryShader);
- CORE_FEATURE(multiviewTessellationShader);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES: {
- VkPhysicalDeviceProtectedMemoryFeatures *features = (void *)ext;
- CORE_FEATURE(protectedMemory);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES: {
- VkPhysicalDeviceSamplerYcbcrConversionFeatures *features = (void *) ext;
- CORE_FEATURE(samplerYcbcrConversion);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES: {
- VkPhysicalDeviceShaderDrawParametersFeatures *features = (void *)ext;
- CORE_FEATURE(shaderDrawParameters);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES: {
- VkPhysicalDeviceVariablePointersFeatures *features = (void *)ext;
- CORE_FEATURE(variablePointersStorageBuffer);
- CORE_FEATURE(variablePointers);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES:
- copy_vk_struct_guts(ext, (void *)core, sizeof(*core));
- return true;
-
- default:
- return false;
- }
-}
-
-bool
-vk_get_physical_device_core_1_2_feature_ext(struct VkBaseOutStructure *ext,
- const VkPhysicalDeviceVulkan12Features *core)
-{
-
- switch (ext->sType) {
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR: {
- VkPhysicalDevice8BitStorageFeaturesKHR *features = (void *)ext;
- CORE_FEATURE(storageBuffer8BitAccess);
- CORE_FEATURE(uniformAndStorageBuffer8BitAccess);
- CORE_FEATURE(storagePushConstant8);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR: {
- VkPhysicalDeviceBufferDeviceAddressFeaturesKHR *features = (void *)ext;
- CORE_FEATURE(bufferDeviceAddress);
- CORE_FEATURE(bufferDeviceAddressCaptureReplay);
- CORE_FEATURE(bufferDeviceAddressMultiDevice);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT: {
- VkPhysicalDeviceDescriptorIndexingFeaturesEXT *features = (void *)ext;
- CORE_FEATURE(shaderInputAttachmentArrayDynamicIndexing);
- CORE_FEATURE(shaderUniformTexelBufferArrayDynamicIndexing);
- CORE_FEATURE(shaderStorageTexelBufferArrayDynamicIndexing);
- CORE_FEATURE(shaderUniformBufferArrayNonUniformIndexing);
- CORE_FEATURE(shaderSampledImageArrayNonUniformIndexing);
- CORE_FEATURE(shaderStorageBufferArrayNonUniformIndexing);
- CORE_FEATURE(shaderStorageImageArrayNonUniformIndexing);
- CORE_FEATURE(shaderInputAttachmentArrayNonUniformIndexing);
- CORE_FEATURE(shaderUniformTexelBufferArrayNonUniformIndexing);
- CORE_FEATURE(shaderStorageTexelBufferArrayNonUniformIndexing);
- CORE_FEATURE(descriptorBindingUniformBufferUpdateAfterBind);
- CORE_FEATURE(descriptorBindingSampledImageUpdateAfterBind);
- CORE_FEATURE(descriptorBindingStorageImageUpdateAfterBind);
- CORE_FEATURE(descriptorBindingStorageBufferUpdateAfterBind);
- CORE_FEATURE(descriptorBindingUniformTexelBufferUpdateAfterBind);
- CORE_FEATURE(descriptorBindingStorageTexelBufferUpdateAfterBind);
- CORE_FEATURE(descriptorBindingUpdateUnusedWhilePending);
- CORE_FEATURE(descriptorBindingPartiallyBound);
- CORE_FEATURE(descriptorBindingVariableDescriptorCount);
- CORE_FEATURE(runtimeDescriptorArray);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR: {
- VkPhysicalDeviceFloat16Int8FeaturesKHR *features = (void *)ext;
- CORE_FEATURE(shaderFloat16);
- CORE_FEATURE(shaderInt8);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT: {
- VkPhysicalDeviceHostQueryResetFeaturesEXT *features = (void *)ext;
- CORE_FEATURE(hostQueryReset);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR: {
- VkPhysicalDeviceImagelessFramebufferFeaturesKHR *features = (void *)ext;
- CORE_FEATURE(imagelessFramebuffer);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT: {
- VkPhysicalDeviceScalarBlockLayoutFeaturesEXT *features =(void *)ext;
- CORE_FEATURE(scalarBlockLayout);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR: {
- VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR *features = (void *)ext;
- CORE_FEATURE(separateDepthStencilLayouts);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR: {
- VkPhysicalDeviceShaderAtomicInt64FeaturesKHR *features = (void *)ext;
- CORE_FEATURE(shaderBufferInt64Atomics);
- CORE_FEATURE(shaderSharedInt64Atomics);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR: {
- VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR *features = (void *)ext;
- CORE_FEATURE(shaderSubgroupExtendedTypes);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR: {
- VkPhysicalDeviceTimelineSemaphoreFeaturesKHR *features = (void *) ext;
- CORE_FEATURE(timelineSemaphore);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR: {
- VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR *features = (void *)ext;
- CORE_FEATURE(uniformBufferStandardLayout);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR: {
- VkPhysicalDeviceVulkanMemoryModelFeaturesKHR *features = (void *)ext;
- CORE_FEATURE(vulkanMemoryModel);
- CORE_FEATURE(vulkanMemoryModelDeviceScope);
- CORE_FEATURE(vulkanMemoryModelAvailabilityVisibilityChains);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES:
- copy_vk_struct_guts(ext, (void *)core, sizeof(*core));
- return true;
-
- default:
- return false;
- }
-}
-
-#undef CORE_FEATURE
-
-#define CORE_RENAMED_PROPERTY(ext_property, core_property) \
- memcpy(&properties->ext_property, &core->core_property, sizeof(core->core_property))
-
-#define CORE_PROPERTY(property) CORE_RENAMED_PROPERTY(property, property)
-
-bool
-vk_get_physical_device_core_1_1_property_ext(struct VkBaseOutStructure *ext,
- const VkPhysicalDeviceVulkan11Properties *core)
-{
- switch (ext->sType) {
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES: {
- VkPhysicalDeviceIDProperties *properties = (void *)ext;
- CORE_PROPERTY(deviceUUID);
- CORE_PROPERTY(driverUUID);
- CORE_PROPERTY(deviceLUID);
- CORE_PROPERTY(deviceLUIDValid);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES: {
- VkPhysicalDeviceMaintenance3Properties *properties = (void *)ext;
- CORE_PROPERTY(maxPerSetDescriptors);
- CORE_PROPERTY(maxMemoryAllocationSize);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES: {
- VkPhysicalDeviceMultiviewProperties *properties = (void *)ext;
- CORE_PROPERTY(maxMultiviewViewCount);
- CORE_PROPERTY(maxMultiviewInstanceIndex);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES: {
- VkPhysicalDevicePointClippingProperties *properties = (void *) ext;
- CORE_PROPERTY(pointClippingBehavior);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES: {
- VkPhysicalDeviceProtectedMemoryProperties *properties = (void *)ext;
- CORE_PROPERTY(protectedNoFault);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES: {
- VkPhysicalDeviceSubgroupProperties *properties = (void *)ext;
- CORE_PROPERTY(subgroupSize);
- CORE_RENAMED_PROPERTY(supportedStages,
- subgroupSupportedStages);
- CORE_RENAMED_PROPERTY(supportedOperations,
- subgroupSupportedOperations);
- CORE_RENAMED_PROPERTY(quadOperationsInAllStages,
- subgroupQuadOperationsInAllStages);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES:
- copy_vk_struct_guts(ext, (void *)core, sizeof(*core));
- return true;
-
- default:
- return false;
- }
-}
-
-bool
-vk_get_physical_device_core_1_2_property_ext(struct VkBaseOutStructure *ext,
- const VkPhysicalDeviceVulkan12Properties *core)
-{
- switch (ext->sType) {
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR: {
- VkPhysicalDeviceDepthStencilResolvePropertiesKHR *properties = (void *)ext;
- CORE_PROPERTY(supportedDepthResolveModes);
- CORE_PROPERTY(supportedStencilResolveModes);
- CORE_PROPERTY(independentResolveNone);
- CORE_PROPERTY(independentResolve);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT: {
- VkPhysicalDeviceDescriptorIndexingPropertiesEXT *properties = (void *)ext;
- CORE_PROPERTY(maxUpdateAfterBindDescriptorsInAllPools);
- CORE_PROPERTY(shaderUniformBufferArrayNonUniformIndexingNative);
- CORE_PROPERTY(shaderSampledImageArrayNonUniformIndexingNative);
- CORE_PROPERTY(shaderStorageBufferArrayNonUniformIndexingNative);
- CORE_PROPERTY(shaderStorageImageArrayNonUniformIndexingNative);
- CORE_PROPERTY(shaderInputAttachmentArrayNonUniformIndexingNative);
- CORE_PROPERTY(robustBufferAccessUpdateAfterBind);
- CORE_PROPERTY(quadDivergentImplicitLod);
- CORE_PROPERTY(maxPerStageDescriptorUpdateAfterBindSamplers);
- CORE_PROPERTY(maxPerStageDescriptorUpdateAfterBindUniformBuffers);
- CORE_PROPERTY(maxPerStageDescriptorUpdateAfterBindStorageBuffers);
- CORE_PROPERTY(maxPerStageDescriptorUpdateAfterBindSampledImages);
- CORE_PROPERTY(maxPerStageDescriptorUpdateAfterBindStorageImages);
- CORE_PROPERTY(maxPerStageDescriptorUpdateAfterBindInputAttachments);
- CORE_PROPERTY(maxPerStageUpdateAfterBindResources);
- CORE_PROPERTY(maxDescriptorSetUpdateAfterBindSamplers);
- CORE_PROPERTY(maxDescriptorSetUpdateAfterBindUniformBuffers);
- CORE_PROPERTY(maxDescriptorSetUpdateAfterBindUniformBuffersDynamic);
- CORE_PROPERTY(maxDescriptorSetUpdateAfterBindStorageBuffers);
- CORE_PROPERTY(maxDescriptorSetUpdateAfterBindStorageBuffersDynamic);
- CORE_PROPERTY(maxDescriptorSetUpdateAfterBindSampledImages);
- CORE_PROPERTY(maxDescriptorSetUpdateAfterBindStorageImages);
- CORE_PROPERTY(maxDescriptorSetUpdateAfterBindInputAttachments);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR: {
- VkPhysicalDeviceDriverPropertiesKHR *properties = (void *) ext;
- CORE_PROPERTY(driverID);
- CORE_PROPERTY(driverName);
- CORE_PROPERTY(driverInfo);
- CORE_PROPERTY(conformanceVersion);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT: {
- VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT *properties = (void *)ext;
- CORE_PROPERTY(filterMinmaxImageComponentMapping);
- CORE_PROPERTY(filterMinmaxSingleComponentFormats);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR : {
- VkPhysicalDeviceFloatControlsPropertiesKHR *properties = (void *)ext;
- CORE_PROPERTY(denormBehaviorIndependence);
- CORE_PROPERTY(roundingModeIndependence);
- CORE_PROPERTY(shaderDenormFlushToZeroFloat16);
- CORE_PROPERTY(shaderDenormPreserveFloat16);
- CORE_PROPERTY(shaderRoundingModeRTEFloat16);
- CORE_PROPERTY(shaderRoundingModeRTZFloat16);
- CORE_PROPERTY(shaderSignedZeroInfNanPreserveFloat16);
- CORE_PROPERTY(shaderDenormFlushToZeroFloat32);
- CORE_PROPERTY(shaderDenormPreserveFloat32);
- CORE_PROPERTY(shaderRoundingModeRTEFloat32);
- CORE_PROPERTY(shaderRoundingModeRTZFloat32);
- CORE_PROPERTY(shaderSignedZeroInfNanPreserveFloat32);
- CORE_PROPERTY(shaderDenormFlushToZeroFloat64);
- CORE_PROPERTY(shaderDenormPreserveFloat64);
- CORE_PROPERTY(shaderRoundingModeRTEFloat64);
- CORE_PROPERTY(shaderRoundingModeRTZFloat64);
- CORE_PROPERTY(shaderSignedZeroInfNanPreserveFloat64);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR: {
- VkPhysicalDeviceTimelineSemaphorePropertiesKHR *properties = (void *) ext;
- CORE_PROPERTY(maxTimelineSemaphoreValueDifference);
- return true;
- }
-
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES:
- copy_vk_struct_guts(ext, (void *)core, sizeof(*core));
- return true;
-
- default:
- return false;
- }
-}
-
-#undef CORE_RENAMED_PROPERTY
-#undef CORE_PROPERTY
-