| // Copyright 2018 The SwiftShader Authors. All Rights Reserved. | |
| // | |
| // Licensed under the Apache License, Version 2.0 (the "License"); | |
| // you may not use this file except in compliance with the License. | |
| // You may obtain a copy of the License at | |
| // | |
| // http://www.apache.org/licenses/LICENSE-2.0 | |
| // | |
| // Unless required by applicable law or agreed to in writing, software | |
| // distributed under the License is distributed on an "AS IS" BASIS, | |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| // See the License for the specific language governing permissions and | |
| // limitations under the License. | |
| // This file contains function definitions for extensions Vulkan 1.1 | |
| // promoted into the core API. (See spec Appendix D: Core Revisions) | |
| // The current list of promoted extensions is: | |
| // VK_KHR_16bit_storage (no functions in this extension) | |
| // VK_KHR_bind_memory2 | |
| // VK_KHR_dedicated_allocation (no functions in this extension) | |
| // VK_KHR_descriptor_update_template | |
| // VK_KHR_device_group | |
| // VK_KHR_device_group_creation | |
| // VK_KHR_external_fence (no functions in this extension) | |
| // VK_KHR_external_fence_capabilities | |
| // VK_KHR_external_memory (no functions in this extension) | |
| // VK_KHR_external_memory_capabilities | |
| // VK_KHR_external_semaphore (no functions in this extension) | |
| // VK_KHR_external_semaphore_capabilities | |
| // VK_KHR_get_memory_requirements2 | |
| // VK_KHR_get_physical_device_properties2 | |
| // VK_KHR_maintenance1 | |
| // VK_KHR_maintenance2 (no functions in this extension) | |
| // VK_KHR_maintenance3 | |
| // VK_KHR_multiview (no functions in this extension) | |
| // VK_KHR_relaxed_block_layout (no functions in this extension) | |
| // VK_KHR_sampler_ycbcr_conversion | |
| // VK_KHR_shader_draw_parameters (no functions in this extension) | |
| // VK_KHR_storage_buffer_storage_class (no functions in this extension) | |
| // VK_KHR_variable_pointers (no functions in this extension) | |
| #include <Vulkan/VulkanPlatform.h> | |
| extern "C" | |
| { | |
| // VK_KHR_bind_memory2 | |
| VKAPI_ATTR VkResult VKAPI_CALL vkBindBufferMemory2KHR(VkDevice device, uint32_t bindInfoCount, const VkBindBufferMemoryInfo* pBindInfos) | |
| { | |
| return vkBindBufferMemory2(device, bindInfoCount, pBindInfos); | |
| } | |
| VKAPI_ATTR VkResult VKAPI_CALL vkBindImageMemory2KHR(VkDevice device, uint32_t bindInfoCount, const VkBindImageMemoryInfo* pBindInfos) | |
| { | |
| return vkBindImageMemory2(device, bindInfoCount, pBindInfos); | |
| } | |
| // VK_KHR_descriptor_update_template | |
| VKAPI_ATTR VkResult VKAPI_CALL vkCreateDescriptorUpdateTemplateKHR(VkDevice device, const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate) | |
| { | |
| return vkCreateDescriptorUpdateTemplate(device, pCreateInfo, pAllocator, pDescriptorUpdateTemplate); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkDestroyDescriptorUpdateTemplateKHR(VkDevice device, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const VkAllocationCallbacks* pAllocator) | |
| { | |
| vkDestroyDescriptorUpdateTemplate(device, descriptorUpdateTemplate, pAllocator); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkUpdateDescriptorSetWithTemplateKHR(VkDevice device, VkDescriptorSet descriptorSet, VkDescriptorUpdateTemplate descriptorUpdateTemplate, const void* pData) | |
| { | |
| vkUpdateDescriptorSetWithTemplate(device, descriptorSet, descriptorUpdateTemplate, pData); | |
| } | |
| // VK_KHR_device_group | |
| VKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeaturesKHR(VkDevice device, uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures) | |
| { | |
| vkGetDeviceGroupPeerMemoryFeatures(device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMaskKHR(VkCommandBuffer commandBuffer, uint32_t deviceMask) | |
| { | |
| vkCmdSetDeviceMask(commandBuffer, deviceMask); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkCmdDispatchBaseKHR(VkCommandBuffer commandBuffer, uint32_t baseGroupX, uint32_t baseGroupY, uint32_t baseGroupZ, uint32_t groupCountX, uint32_t groupCountY, uint32_t groupCountZ) | |
| { | |
| vkCmdDispatchBase(commandBuffer, baseGroupX, baseGroupY, baseGroupZ, groupCountX, groupCountY, groupCountZ); | |
| } | |
| // VK_KHR_device_group_creation | |
| VKAPI_ATTR VkResult VKAPI_CALL vkEnumeratePhysicalDeviceGroupsKHR(VkInstance instance, uint32_t* pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties) | |
| { | |
| return vkEnumeratePhysicalDeviceGroups(instance, pPhysicalDeviceGroupCount, pPhysicalDeviceGroupProperties); | |
| } | |
| // VK_KHR_external_fence_capabilities | |
| VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalFencePropertiesKHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VkExternalFenceProperties* pExternalFenceProperties) | |
| { | |
| vkGetPhysicalDeviceExternalFenceProperties(physicalDevice, pExternalFenceInfo, pExternalFenceProperties); | |
| } | |
| // VK_KHR_external_memory_capabilities | |
| VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferPropertiesKHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo, VkExternalBufferProperties* pExternalBufferProperties) | |
| { | |
| vkGetPhysicalDeviceExternalBufferProperties(physicalDevice, pExternalBufferInfo, pExternalBufferProperties); | |
| } | |
| // VK_KHR_external_semaphore_capabilities | |
| VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VkExternalSemaphoreProperties* pExternalSemaphoreProperties) | |
| { | |
| vkGetPhysicalDeviceExternalSemaphoreProperties(physicalDevice, pExternalSemaphoreInfo, pExternalSemaphoreProperties); | |
| } | |
| // VK_KHR_get_memory_requirements2 | |
| VKAPI_ATTR void VKAPI_CALL vkGetImageMemoryRequirements2KHR(VkDevice device, const VkImageMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements) | |
| { | |
| vkGetImageMemoryRequirements2(device, pInfo, pMemoryRequirements); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkGetBufferMemoryRequirements2KHR(VkDevice device, const VkBufferMemoryRequirementsInfo2* pInfo, VkMemoryRequirements2* pMemoryRequirements) | |
| { | |
| vkGetBufferMemoryRequirements2(device, pInfo, pMemoryRequirements); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements2KHR(VkDevice device, const VkImageSparseMemoryRequirementsInfo2* pInfo, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements2* pSparseMemoryRequirements) | |
| { | |
| vkGetImageSparseMemoryRequirements2(device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements); | |
| } | |
| // VK_KHR_get_physical_device_properties2 | |
| VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFeatures2KHR(VkPhysicalDevice physicalDevice, VkPhysicalDeviceFeatures2* pFeatures) | |
| { | |
| vkGetPhysicalDeviceFeatures2(physicalDevice, pFeatures); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceProperties2KHR(VkPhysicalDevice physicalDevice, VkPhysicalDeviceProperties2* pProperties) | |
| { | |
| vkGetPhysicalDeviceProperties2(physicalDevice, pProperties); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceFormatProperties2KHR(VkPhysicalDevice physicalDevice, VkFormat format, VkFormatProperties2* pFormatProperties) | |
| { | |
| vkGetPhysicalDeviceFormatProperties2(physicalDevice, format, pFormatProperties); | |
| } | |
| VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceImageFormatProperties2KHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo, VkImageFormatProperties2* pImageFormatProperties) | |
| { | |
| return vkGetPhysicalDeviceImageFormatProperties2(physicalDevice, pImageFormatInfo, pImageFormatProperties); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceQueueFamilyProperties2KHR(VkPhysicalDevice physicalDevice, uint32_t* pQueueFamilyPropertyCount, VkQueueFamilyProperties2* pQueueFamilyProperties) | |
| { | |
| vkGetPhysicalDeviceQueueFamilyProperties2(physicalDevice, pQueueFamilyPropertyCount, pQueueFamilyProperties); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMemoryProperties2KHR(VkPhysicalDevice physicalDevice, VkPhysicalDeviceMemoryProperties2* pMemoryProperties) | |
| { | |
| vkGetPhysicalDeviceMemoryProperties2(physicalDevice, pMemoryProperties); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties2KHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo, uint32_t* pPropertyCount, VkSparseImageFormatProperties2* pProperties) | |
| { | |
| vkGetPhysicalDeviceSparseImageFormatProperties2(physicalDevice, pFormatInfo, pPropertyCount, pProperties); | |
| } | |
| // VK_KHR_maintenance1 | |
| VKAPI_ATTR void VKAPI_CALL vkTrimCommandPoolKHR(VkDevice device, VkCommandPool commandPool, VkCommandPoolTrimFlags flags) | |
| { | |
| vkTrimCommandPool(device, commandPool, flags); | |
| } | |
| // VK_KHR_maintenance3 | |
| VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetLayoutSupportKHR(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport) | |
| { | |
| vkGetDescriptorSetLayoutSupport(device, pCreateInfo, pSupport); | |
| } | |
| // VK_KHR_sampler_ycbcr_conversion | |
| VKAPI_ATTR VkResult VKAPI_CALL vkCreateSamplerYcbcrConversionKHR(VkDevice device, const VkSamplerYcbcrConversionCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSamplerYcbcrConversion* pYcbcrConversion) | |
| { | |
| return vkCreateSamplerYcbcrConversion(device, pCreateInfo, pAllocator, pYcbcrConversion); | |
| } | |
| VKAPI_ATTR void VKAPI_CALL vkDestroySamplerYcbcrConversionKHR(VkDevice device, VkSamplerYcbcrConversion ycbcrConversion, const VkAllocationCallbacks* pAllocator) | |
| { | |
| vkDestroySamplerYcbcrConversion(device, ycbcrConversion, pAllocator); | |
| } | |
| } |