OSDN Git Service

Remove unsupported functionality.
authorNicolas Capens <capn@google.com>
Tue, 13 Nov 2018 20:03:35 +0000 (15:03 -0500)
committerNicolas Capens <nicolascapens@google.com>
Wed, 14 Nov 2018 15:38:59 +0000 (15:38 +0000)
Bug b/117974925

Change-Id: I9c4553a1586e4f9e4a193b24f6c1b07749a7702a
Reviewed-on: https://swiftshader-review.googlesource.com/c/22509
Tested-by: Nicolas Capens <nicolascapens@google.com>
Reviewed-by: Corentin Wallez <cwallez@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
src/Vulkan/VkDevice.cpp
src/Vulkan/VkDevice.hpp
src/Vulkan/VkPhysicalDevice.cpp
src/Vulkan/VkPhysicalDevice.hpp
src/Vulkan/libVulkan.cpp

index 4638bb5..2d9e23f 100644 (file)
@@ -66,25 +66,6 @@ VkQueue Device::getQueue(uint32_t queueFamilyIndex, uint32_t queueIndex) const
        return queues[queueIndex];
 }
 
-void Device::getImageSparseMemoryRequirements(VkImage pImage, uint32_t* pSparseMemoryRequirementCount,
-                                                 VkSparseImageMemoryRequirements* pSparseMemoryRequirements) const
-{
-       if(!pSparseMemoryRequirements)
-       {
-               *pSparseMemoryRequirementCount = 1;
-       }
-       else
-       {
-               UNIMPLEMENTED();
-       }
-}
-
-void Device::getGroupPeerMemoryFeatures(uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex,
-                                        VkPeerMemoryFeatureFlags* pPeerMemoryFeatures) const
-{
-       UNIMPLEMENTED();
-}
-
 void Device::getDescriptorSetLayoutSupport(const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
                                            VkDescriptorSetLayoutSupport* pSupport) const
 {
index 7f1f6af..424e9bb 100644 (file)
@@ -39,10 +39,6 @@ public:
        static size_t ComputeRequiredAllocationSize(const CreateInfo* info);
 
        VkQueue getQueue(uint32_t queueFamilyIndex, uint32_t queueIndex) const;
-       void getImageSparseMemoryRequirements(VkImage image, uint32_t* pSparseMemoryRequirementCount,
-                                             VkSparseImageMemoryRequirements* pSparseMemoryRequirements) const;
-       void getGroupPeerMemoryFeatures(uint32_t heapIndex, uint32_t localDeviceIndex, uint32_t remoteDeviceIndex,
-                                       VkPeerMemoryFeatureFlags* pPeerMemoryFeatures) const;
        void getDescriptorSetLayoutSupport(const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
                                           VkDescriptorSetLayoutSupport* pSupport) const;
        VkPhysicalDevice getPhysicalDevice() const { return physicalDevice; }
index d97278a..7dbd4ef 100644 (file)
@@ -286,8 +286,8 @@ void PhysicalDevice::getProperties(VkPhysicalDeviceMaintenance3Properties* prope
 
 void PhysicalDevice::getProperties(VkPhysicalDeviceMultiviewProperties* properties) const
 {
-       properties->maxMultiviewInstanceIndex = (1 << 27) - 1;
-       properties->maxMultiviewViewCount = 6;
+       properties->maxMultiviewViewCount = 0;
+       properties->maxMultiviewInstanceIndex = 0;
 }
 
 void PhysicalDevice::getProperties(VkPhysicalDevicePointClippingProperties* properties) const
@@ -468,34 +468,4 @@ const VkPhysicalDeviceMemoryProperties& PhysicalDevice::getMemoryProperties() co
        return properties;
 }
 
-void PhysicalDevice::getExternalBufferProperties(const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
-                                                 VkExternalBufferProperties* pExternalBufferProperties) const
-{
-       // FIXME: currently ignoring pExternalBufferInfo
-
-       pExternalBufferProperties->externalMemoryProperties.compatibleHandleTypes = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT;
-       pExternalBufferProperties->externalMemoryProperties.exportFromImportedHandleTypes = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT;
-       pExternalBufferProperties->externalMemoryProperties.externalMemoryFeatures = VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT;
-}
-
-void PhysicalDevice::getExternalFenceProperties(const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
-                                                VkExternalFenceProperties* pExternalFenceProperties) const
-{
-       // FIXME: currently ignoring pExternalFenceInfo
-
-       pExternalFenceProperties->compatibleHandleTypes = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT;
-       pExternalFenceProperties->exportFromImportedHandleTypes = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT;
-       pExternalFenceProperties->externalFenceFeatures = VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT;
-}
-
-void PhysicalDevice::getExternalSemaphoreProperties(const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
-                                                    VkExternalSemaphoreProperties* pExternalSemaphoreProperties) const
-{
-       // FIXME: currently ignoring pExternalSemaphoreInfo
-
-       pExternalSemaphoreProperties->compatibleHandleTypes = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT;
-       pExternalSemaphoreProperties->exportFromImportedHandleTypes = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT;
-       pExternalSemaphoreProperties->externalSemaphoreFeatures = VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT;
-}
-
 } // namespace vk
index c5221a4..abfef2d 100644 (file)
@@ -55,12 +55,6 @@ public:
        void getQueueFamilyProperties(uint32_t pQueueFamilyPropertyCount,
                                      VkQueueFamilyProperties* pQueueFamilyProperties) const;
        const VkPhysicalDeviceMemoryProperties& getMemoryProperties() const;
-       void getExternalBufferProperties(const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
-                                        VkExternalBufferProperties* pExternalBufferProperties) const;
-       void getExternalFenceProperties(const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
-                                       VkExternalFenceProperties* pExternalFenceProperties) const;
-       void getExternalSemaphoreProperties(const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
-                                           VkExternalSemaphoreProperties* pExternalSemaphoreProperties) const;
 
 private:
        const VkPhysicalDeviceLimits& getLimits() const;
index a3abbad..bf65a66 100644 (file)
@@ -505,7 +505,9 @@ VKAPI_ATTR void VKAPI_CALL vkGetImageSparseMemoryRequirements(VkDevice device, V
        TRACE("(VkDevice device, VkImage image, uint32_t* pSparseMemoryRequirementCount, VkSparseImageMemoryRequirements* pSparseMemoryRequirements)",
              device, image, pSparseMemoryRequirementCount, pSparseMemoryRequirements);
 
-       vk::Cast(device)->getImageSparseMemoryRequirements(image, pSparseMemoryRequirementCount, pSparseMemoryRequirements);
+       // The 'sparseBinding' feature is not supported, so images can not be created with the VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT flag.
+       // "If the image was not created with VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT then pSparseMemoryRequirementCount will be set to zero and pSparseMemoryRequirements will not be written to."
+       *pSparseMemoryRequirementCount = 0;
 }
 
 VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceSparseImageFormatProperties(VkPhysicalDevice physicalDevice, VkFormat format, VkImageType type, VkSampleCountFlagBits samples, VkImageUsageFlags usage, VkImageTiling tiling, uint32_t* pPropertyCount, VkSparseImageFormatProperties* pProperties)
@@ -1410,7 +1412,8 @@ VKAPI_ATTR void VKAPI_CALL vkGetDeviceGroupPeerMemoryFeatures(VkDevice device, u
        TRACE("(VkDevice device = 0x%X, uint32_t heapIndex = %d, uint32_t localDeviceIndex = %d, uint32_t remoteDeviceIndex = %d, VkPeerMemoryFeatureFlags* pPeerMemoryFeatures = 0x%X)",
              device, heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures);
 
-       vk::Cast(device)->getGroupPeerMemoryFeatures(heapIndex, localDeviceIndex, remoteDeviceIndex, pPeerMemoryFeatures);
+       ASSERT(localDeviceIndex != remoteDeviceIndex); // "localDeviceIndex must not equal remoteDeviceIndex"
+       UNREACHABLE(remoteDeviceIndex);   // Only one physical device is supported, and since the device indexes can't be equal, this should never be called.
 }
 
 VKAPI_ATTR void VKAPI_CALL vkCmdSetDeviceMask(VkCommandBuffer commandBuffer, uint32_t deviceMask)
@@ -1742,7 +1745,7 @@ VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalBufferProperties(VkPhysica
        TRACE("(VkPhysicalDevice physicalDevice = 0x%X, const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo = 0x%X, VkExternalBufferProperties* pExternalBufferProperties = 0x%X)",
              physicalDevice, pExternalBufferInfo, pExternalBufferProperties);
 
-       vk::Cast(physicalDevice)->getExternalBufferProperties(pExternalBufferInfo, pExternalBufferProperties);
+       UNIMPLEMENTED();
 }
 
 VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalFenceProperties(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo, VkExternalFenceProperties* pExternalFenceProperties)
@@ -1750,7 +1753,7 @@ VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalFenceProperties(VkPhysical
        TRACE("(VkPhysicalDevice physicalDevice = 0x%X, const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo = 0x%X, VkExternalFenceProperties* pExternalFenceProperties = 0x%X)",
              physicalDevice, pExternalFenceInfo, pExternalFenceProperties);
 
-       vk::Cast(physicalDevice)->getExternalFenceProperties(pExternalFenceInfo, pExternalFenceProperties);
+       UNIMPLEMENTED();
 }
 
 VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphoreProperties(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo, VkExternalSemaphoreProperties* pExternalSemaphoreProperties)
@@ -1758,7 +1761,7 @@ VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceExternalSemaphoreProperties(VkPhys
        TRACE("(VkPhysicalDevice physicalDevice = 0x%X, const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo = 0x%X, VkExternalSemaphoreProperties* pExternalSemaphoreProperties = 0x%X)",
              physicalDevice, pExternalSemaphoreInfo, pExternalSemaphoreProperties);
 
-       vk::Cast(physicalDevice)->getExternalSemaphoreProperties(pExternalSemaphoreInfo, pExternalSemaphoreProperties);
+       UNIMPLEMENTED();
 }
 
 VKAPI_ATTR void VKAPI_CALL vkGetDescriptorSetLayoutSupport(VkDevice device, const VkDescriptorSetLayoutCreateInfo* pCreateInfo, VkDescriptorSetLayoutSupport* pSupport)