GitRepo(
"https://github.com/KhronosGroup/glslang.git",
None,
- "973d0e538292c85b7baf9bb5aaf755894429f76a",
- "1ff0c181bb37b06371e2ffa2810d473c5e01c9b7",
++ "ee8e9c15222c2aff93dfea451b1e8a892497ec2d",
"glslang",
removeTags = ["master-tot"]),
GitRepo(
#define VK_WHOLE_SIZE (static_cast<vk::VkDeviceSize> ((~0ULL)))
#define VK_TRUE (static_cast<vk::VkBool32> (1))
#define VK_FALSE (static_cast<vk::VkBool32> (0))
-#define VK_API_MAX_FRAMEWORK_VERSION VK_API_VERSION_1_1
-
-VK_DEFINE_HANDLE (VkInstance, HANDLE_TYPE_INSTANCE);
-VK_DEFINE_HANDLE (VkPhysicalDevice, HANDLE_TYPE_PHYSICAL_DEVICE);
-VK_DEFINE_HANDLE (VkDevice, HANDLE_TYPE_DEVICE);
-VK_DEFINE_HANDLE (VkQueue, HANDLE_TYPE_QUEUE);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkSemaphore, HANDLE_TYPE_SEMAPHORE);
-VK_DEFINE_HANDLE (VkCommandBuffer, HANDLE_TYPE_COMMAND_BUFFER);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkFence, HANDLE_TYPE_FENCE);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDeviceMemory, HANDLE_TYPE_DEVICE_MEMORY);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkBuffer, HANDLE_TYPE_BUFFER);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkImage, HANDLE_TYPE_IMAGE);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkEvent, HANDLE_TYPE_EVENT);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkQueryPool, HANDLE_TYPE_QUERY_POOL);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkBufferView, HANDLE_TYPE_BUFFER_VIEW);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkImageView, HANDLE_TYPE_IMAGE_VIEW);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkShaderModule, HANDLE_TYPE_SHADER_MODULE);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkPipelineCache, HANDLE_TYPE_PIPELINE_CACHE);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkPipelineLayout, HANDLE_TYPE_PIPELINE_LAYOUT);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkRenderPass, HANDLE_TYPE_RENDER_PASS);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkPipeline, HANDLE_TYPE_PIPELINE);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDescriptorSetLayout, HANDLE_TYPE_DESCRIPTOR_SET_LAYOUT);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkSampler, HANDLE_TYPE_SAMPLER);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDescriptorPool, HANDLE_TYPE_DESCRIPTOR_POOL);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDescriptorSet, HANDLE_TYPE_DESCRIPTOR_SET);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkFramebuffer, HANDLE_TYPE_FRAMEBUFFER);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkCommandPool, HANDLE_TYPE_COMMAND_POOL);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkSamplerYcbcrConversion, HANDLE_TYPE_SAMPLER_YCBCR_CONVERSION);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDescriptorUpdateTemplate, HANDLE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkSurfaceKHR, HANDLE_TYPE_SURFACE_KHR);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkSwapchainKHR, HANDLE_TYPE_SWAPCHAIN_KHR);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDisplayKHR, HANDLE_TYPE_DISPLAY_KHR);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDisplayModeKHR, HANDLE_TYPE_DISPLAY_MODE_KHR);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDebugReportCallbackEXT, HANDLE_TYPE_DEBUG_REPORT_CALLBACK_EXT);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkObjectTableNVX, HANDLE_TYPE_OBJECT_TABLE_NVX);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkIndirectCommandsLayoutNVX, HANDLE_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDebugUtilsMessengerEXT, HANDLE_TYPE_DEBUG_UTILS_MESSENGER_EXT);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkValidationCacheEXT, HANDLE_TYPE_VALIDATION_CACHE_EXT);
-VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkAccelerationStructureNV, HANDLE_TYPE_ACCELERATION_STRUCTURE_NV);
++#define VK_API_MAX_FRAMEWORK_VERSION VK_API_VERSION_1_2
+
+VK_DEFINE_HANDLE (VkInstance, HANDLE_TYPE_INSTANCE);
+VK_DEFINE_HANDLE (VkPhysicalDevice, HANDLE_TYPE_PHYSICAL_DEVICE);
+VK_DEFINE_HANDLE (VkDevice, HANDLE_TYPE_DEVICE);
+VK_DEFINE_HANDLE (VkQueue, HANDLE_TYPE_QUEUE);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkSemaphore, HANDLE_TYPE_SEMAPHORE);
+VK_DEFINE_HANDLE (VkCommandBuffer, HANDLE_TYPE_COMMAND_BUFFER);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkFence, HANDLE_TYPE_FENCE);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDeviceMemory, HANDLE_TYPE_DEVICE_MEMORY);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkBuffer, HANDLE_TYPE_BUFFER);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkImage, HANDLE_TYPE_IMAGE);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkEvent, HANDLE_TYPE_EVENT);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkQueryPool, HANDLE_TYPE_QUERY_POOL);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkBufferView, HANDLE_TYPE_BUFFER_VIEW);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkImageView, HANDLE_TYPE_IMAGE_VIEW);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkShaderModule, HANDLE_TYPE_SHADER_MODULE);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkPipelineCache, HANDLE_TYPE_PIPELINE_CACHE);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkPipelineLayout, HANDLE_TYPE_PIPELINE_LAYOUT);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkRenderPass, HANDLE_TYPE_RENDER_PASS);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkPipeline, HANDLE_TYPE_PIPELINE);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDescriptorSetLayout, HANDLE_TYPE_DESCRIPTOR_SET_LAYOUT);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkSampler, HANDLE_TYPE_SAMPLER);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDescriptorPool, HANDLE_TYPE_DESCRIPTOR_POOL);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDescriptorSet, HANDLE_TYPE_DESCRIPTOR_SET);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkFramebuffer, HANDLE_TYPE_FRAMEBUFFER);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkCommandPool, HANDLE_TYPE_COMMAND_POOL);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkSamplerYcbcrConversion, HANDLE_TYPE_SAMPLER_YCBCR_CONVERSION);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDescriptorUpdateTemplate, HANDLE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkSurfaceKHR, HANDLE_TYPE_SURFACE_KHR);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkSwapchainKHR, HANDLE_TYPE_SWAPCHAIN_KHR);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDisplayKHR, HANDLE_TYPE_DISPLAY_KHR);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDisplayModeKHR, HANDLE_TYPE_DISPLAY_MODE_KHR);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDebugReportCallbackEXT, HANDLE_TYPE_DEBUG_REPORT_CALLBACK_EXT);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkObjectTableNVX, HANDLE_TYPE_OBJECT_TABLE_NVX);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkIndirectCommandsLayoutNVX, HANDLE_TYPE_INDIRECT_COMMANDS_LAYOUT_NVX);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDebugUtilsMessengerEXT, HANDLE_TYPE_DEBUG_UTILS_MESSENGER_EXT);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkValidationCacheEXT, HANDLE_TYPE_VALIDATION_CACHE_EXT);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkAccelerationStructureNV, HANDLE_TYPE_ACCELERATION_STRUCTURE_NV);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkPerformanceConfigurationINTEL, HANDLE_TYPE_PERFORMANCE_CONFIGURATION_INTEL);
enum VkPipelineCacheHeaderVersion
{
}
DefaultDevice::DefaultDevice (const PlatformInterface& vkPlatform, const tcu::CommandLine& cmdLine)
- : m_availableInstanceVersion (getTargetInstanceVersion(vkPlatform))
- , m_deviceVersions (determineDeviceVersions(vkPlatform, m_availableInstanceVersion, cmdLine))
- , m_usedApiVersion (sanitizeApiVersion(deMinu32(m_availableInstanceVersion, m_deviceVersions.first)))
-
- , m_instanceExtensions (addCoreInstanceExtensions(filterExtensions(enumerateInstanceExtensionProperties(vkPlatform, DE_NULL)), m_usedApiVersion))
- , m_instance (createInstance(vkPlatform, m_usedApiVersion, m_instanceExtensions, cmdLine))
-
- , m_instanceInterface (vkPlatform, *m_instance)
- , m_physicalDevice (chooseDevice(m_instanceInterface, *m_instance, cmdLine))
- , m_deviceVersion (getPhysicalDeviceProperties(m_instanceInterface, m_physicalDevice).apiVersion)
-
- , m_deviceExtensions (addCoreDeviceExtensions(filterExtensions(enumerateDeviceExtensionProperties(m_instanceInterface, m_physicalDevice, DE_NULL)), m_usedApiVersion))
- , m_deviceFeatures (m_instanceInterface, m_usedApiVersion, m_physicalDevice, m_instanceExtensions, m_deviceExtensions)
- , m_universalQueueFamilyIndex (findQueueFamilyIndexWithCaps(m_instanceInterface, m_physicalDevice, VK_QUEUE_GRAPHICS_BIT|VK_QUEUE_COMPUTE_BIT))
- , m_sparseQueueFamilyIndex (m_deviceFeatures.getCoreFeatures2().features.sparseBinding ? findQueueFamilyIndexWithCaps(m_instanceInterface, m_physicalDevice, VK_QUEUE_SPARSE_BINDING_BIT) : 0)
- , m_deviceProperties (getPhysicalDeviceProperties(m_instanceInterface, m_physicalDevice))
- , m_devicePropertiesFull (m_instanceInterface, m_usedApiVersion, m_physicalDevice, m_instanceExtensions, m_deviceExtensions)
- , m_device (createDefaultDevice(vkPlatform, *m_instance, m_instanceInterface, m_physicalDevice, m_usedApiVersion, m_universalQueueFamilyIndex, m_sparseQueueFamilyIndex, m_deviceFeatures.getCoreFeatures2(), m_deviceExtensions, cmdLine))
- , m_deviceInterface (vkPlatform, *m_instance, *m_device)
+ : m_maximumFrameworkVulkanVersion (VK_API_MAX_FRAMEWORK_VERSION)
+ , m_availableInstanceVersion (getTargetInstanceVersion(vkPlatform))
+ , m_usedInstanceVersion (sanitizeApiVersion(deMinu32(m_availableInstanceVersion, m_maximumFrameworkVulkanVersion)))
+ , m_deviceVersions (determineDeviceVersions(vkPlatform, m_usedInstanceVersion, cmdLine))
+ , m_usedApiVersion (sanitizeApiVersion(deMinu32(m_usedInstanceVersion, m_deviceVersions.first)))
+
+ , m_instanceExtensions (addCoreInstanceExtensions(filterExtensions(enumerateInstanceExtensionProperties(vkPlatform, DE_NULL)), m_usedApiVersion))
+ , m_instance (createInstance(vkPlatform, m_usedApiVersion, m_instanceExtensions, cmdLine))
+
+ , m_instanceInterface (vkPlatform, *m_instance)
+ , m_physicalDevice (chooseDevice(m_instanceInterface, *m_instance, cmdLine))
+ , m_deviceVersion (getPhysicalDeviceProperties(m_instanceInterface, m_physicalDevice).apiVersion)
+
+ , m_deviceExtensions (addCoreDeviceExtensions(filterExtensions(enumerateDeviceExtensionProperties(m_instanceInterface, m_physicalDevice, DE_NULL)), m_usedApiVersion))
+ , m_deviceFeatures (m_instanceInterface, m_usedApiVersion, m_physicalDevice, m_instanceExtensions, m_deviceExtensions)
+ , m_universalQueueFamilyIndex (findQueueFamilyIndexWithCaps(m_instanceInterface, m_physicalDevice, VK_QUEUE_GRAPHICS_BIT|VK_QUEUE_COMPUTE_BIT))
+ , m_sparseQueueFamilyIndex (m_deviceFeatures.getCoreFeatures2().features.sparseBinding ? findQueueFamilyIndexWithCaps(m_instanceInterface, m_physicalDevice, VK_QUEUE_SPARSE_BINDING_BIT) : 0)
+ , m_deviceProperties (getPhysicalDeviceProperties(m_instanceInterface, m_physicalDevice))
++ , m_devicePropertiesFull (m_instanceInterface, m_usedApiVersion, m_physicalDevice, m_instanceExtensions, m_deviceExtensions)
+ , m_device (createDefaultDevice(vkPlatform, *m_instance, m_instanceInterface, m_physicalDevice, m_usedApiVersion, m_universalQueueFamilyIndex, m_sparseQueueFamilyIndex, m_deviceFeatures.getCoreFeatures2(), m_deviceExtensions, cmdLine))
+ , m_deviceInterface (vkPlatform, *m_instance, *m_device)
{
DE_ASSERT(m_deviceVersions.first == m_deviceVersion);
}
#include "vkDeviceFeaturesForContextDefs.inl"
- const vk::VkPhysicalDeviceProperties& Context::getDeviceProperties (void) const { return m_device->getDeviceProperties(); }
- const vk::VkPhysicalDeviceProperties2& Context::getDeviceProperties2 (void) const { return m_device->getDeviceProperties2(); }
-const vk::VkPhysicalDeviceProperties& Context::getDeviceProperties (void) const { return m_device->getDeviceProperties(); }
-const vector<string>& Context::getDeviceExtensions (void) const { return m_device->getDeviceExtensions(); }
-vk::VkDevice Context::getDevice (void) const { return m_device->getDevice(); }
-const vk::DeviceInterface& Context::getDeviceInterface (void) const { return m_device->getDeviceInterface(); }
-deUint32 Context::getUniversalQueueFamilyIndex (void) const { return m_device->getUniversalQueueFamilyIndex(); }
-vk::VkQueue Context::getUniversalQueue (void) const { return m_device->getUniversalQueue(); }
-deUint32 Context::getSparseQueueFamilyIndex (void) const { return m_device->getSparseQueueFamilyIndex(); }
-vk::VkQueue Context::getSparseQueue (void) const { return m_device->getSparseQueue(); }
-vk::Allocator& Context::getDefaultAllocator (void) const { return *m_allocator; }
-deUint32 Context::getUsedApiVersion (void) const { return m_device->getUsedApiVersion(); }
++const vk::VkPhysicalDeviceProperties& Context::getDeviceProperties (void) const { return m_device->getDeviceProperties(); }
++const vk::VkPhysicalDeviceProperties2& Context::getDeviceProperties2 (void) const { return m_device->getDeviceProperties2(); }
+
+#include "vkDevicePropertiesForContextDefs.inl"
+
- const vector<string>& Context::getDeviceExtensions (void) const { return m_device->getDeviceExtensions(); }
- vk::VkDevice Context::getDevice (void) const { return m_device->getDevice(); }
- const vk::DeviceInterface& Context::getDeviceInterface (void) const { return m_device->getDeviceInterface(); }
- deUint32 Context::getUniversalQueueFamilyIndex (void) const { return m_device->getUniversalQueueFamilyIndex(); }
- vk::VkQueue Context::getUniversalQueue (void) const { return m_device->getUniversalQueue(); }
- deUint32 Context::getSparseQueueFamilyIndex (void) const { return m_device->getSparseQueueFamilyIndex(); }
- vk::VkQueue Context::getSparseQueue (void) const { return m_device->getSparseQueue(); }
- vk::Allocator& Context::getDefaultAllocator (void) const { return *m_allocator; }
- deUint32 Context::getUsedApiVersion (void) const { return m_device->getUsedApiVersion(); }
- bool Context::contextSupports (const deUint32 majorNum, const deUint32 minorNum, const deUint32 patchNum) const
++const vector<string>& Context::getDeviceExtensions (void) const { return m_device->getDeviceExtensions(); }
++vk::VkDevice Context::getDevice (void) const { return m_device->getDevice(); }
++const vk::DeviceInterface& Context::getDeviceInterface (void) const { return m_device->getDeviceInterface(); }
++deUint32 Context::getUniversalQueueFamilyIndex (void) const { return m_device->getUniversalQueueFamilyIndex(); }
++vk::VkQueue Context::getUniversalQueue (void) const { return m_device->getUniversalQueue(); }
++deUint32 Context::getSparseQueueFamilyIndex (void) const { return m_device->getSparseQueueFamilyIndex(); }
++vk::VkQueue Context::getSparseQueue (void) const { return m_device->getSparseQueue(); }
++vk::Allocator& Context::getDefaultAllocator (void) const { return *m_allocator; }
++deUint32 Context::getUsedApiVersion (void) const { return m_device->getUsedApiVersion(); }
+ bool Context::contextSupports (const deUint32 majorNum, const deUint32 minorNum, const deUint32 patchNum) const
- { return m_device->getUsedApiVersion() >= VK_MAKE_VERSION(majorNum, minorNum, patchNum); }
+ { return m_device->getUsedApiVersion() >= VK_MAKE_VERSION(majorNum, minorNum, patchNum); }
- bool Context::contextSupports (const ApiVersion version) const
+ bool Context::contextSupports (const ApiVersion version) const
- { return m_device->getUsedApiVersion() >= pack(version); }
+ { return m_device->getUsedApiVersion() >= pack(version); }
- bool Context::contextSupports (const deUint32 requiredApiVersionBits) const
+ bool Context::contextSupports (const deUint32 requiredApiVersionBits) const
- { return m_device->getUsedApiVersion() >= requiredApiVersionBits; }
+ { return m_device->getUsedApiVersion() >= requiredApiVersionBits; }
- bool Context::isDeviceFeatureInitialized (vk::VkStructureType sType) const
++bool Context::isDeviceFeatureInitialized (vk::VkStructureType sType) const
+ { return m_device->isDeviceFeatureInitialized(sType); }
- bool Context::isDevicePropertyInitialized (vk::VkStructureType sType) const
++bool Context::isDevicePropertyInitialized (vk::VkStructureType sType) const
+ { return m_device->isDevicePropertyInitialized(sType); }
bool Context::requireDeviceExtension (const std::string& required)
{
class Context
{
public:
- Context (tcu::TestContext& testCtx,
- const vk::PlatformInterface& platformInterface,
- vk::BinaryCollection& progCollection);
- ~Context (void);
+ Context (tcu::TestContext& testCtx,
+ const vk::PlatformInterface& platformInterface,
+ vk::BinaryCollection& progCollection);
+ ~Context (void);
- tcu::TestContext& getTestContext (void) const { return m_testCtx; }
- const vk::PlatformInterface& getPlatformInterface (void) const { return m_platformInterface; }
- vk::BinaryCollection& getBinaryCollection (void) const { return m_progCollection; }
+ tcu::TestContext& getTestContext (void) const { return m_testCtx; }
+ const vk::PlatformInterface& getPlatformInterface (void) const { return m_platformInterface; }
+ vk::BinaryCollection& getBinaryCollection (void) const { return m_progCollection; }
// Default instance & device, selected with --deqp-vk-device-id=N
- deUint32 getAvailableInstanceVersion (void) const;
- const std::vector<std::string>& getInstanceExtensions (void) const;
- vk::VkInstance getInstance (void) const;
- const vk::InstanceInterface& getInstanceInterface (void) const;
- vk::VkPhysicalDevice getPhysicalDevice (void) const;
- deUint32 getDeviceVersion (void) const;
-
- bool isDeviceFeatureInitialized (vk::VkStructureType sType) const;
- const vk::VkPhysicalDeviceFeatures& getDeviceFeatures (void) const;
- const vk::VkPhysicalDeviceFeatures2& getDeviceFeatures2 (void) const;
+ deUint32 getMaximumFrameworkVulkanVersion (void) const;
+ deUint32 getAvailableInstanceVersion (void) const;
+ const std::vector<std::string>& getInstanceExtensions (void) const;
+ vk::VkInstance getInstance (void) const;
+ const vk::InstanceInterface& getInstanceInterface (void) const;
+ vk::VkPhysicalDevice getPhysicalDevice (void) const;
+ deUint32 getDeviceVersion (void) const;
++
++ bool isDeviceFeatureInitialized (vk::VkStructureType sType) const;
+ const vk::VkPhysicalDeviceFeatures& getDeviceFeatures (void) const;
+ const vk::VkPhysicalDeviceFeatures2& getDeviceFeatures2 (void) const;
#include "vkDeviceFeaturesForContextDecl.inl"
- bool isDevicePropertyInitialized (vk::VkStructureType sType) const;
- const vk::VkPhysicalDeviceProperties& getDeviceProperties (void) const;
- const vk::VkPhysicalDeviceProperties2& getDeviceProperties2 (void) const;
++ bool isDevicePropertyInitialized (vk::VkStructureType sType) const;
+ const vk::VkPhysicalDeviceProperties& getDeviceProperties (void) const;
++ const vk::VkPhysicalDeviceProperties2& getDeviceProperties2 (void) const;
+
+#include "vkDevicePropertiesForContextDecl.inl"
+
- const std::vector<std::string>& getDeviceExtensions (void) const;
- vk::VkDevice getDevice (void) const;
- const vk::DeviceInterface& getDeviceInterface (void) const;
- deUint32 getUniversalQueueFamilyIndex (void) const;
- vk::VkQueue getUniversalQueue (void) const;
- deUint32 getUsedApiVersion (void) const;
- deUint32 getSparseQueueFamilyIndex (void) const;
- vk::VkQueue getSparseQueue (void) const;
- vk::Allocator& getDefaultAllocator (void) const;
- bool contextSupports (const deUint32 majorNum, const deUint32 minorNum, const deUint32 patchNum) const;
- bool contextSupports (const vk::ApiVersion version) const;
- bool contextSupports (const deUint32 requiredApiVersionBits) const;
- bool requireDeviceExtension (const std::string& required);
- bool requireInstanceExtension (const std::string& required);
- bool requireDeviceCoreFeature (const DeviceCoreFeature requiredDeviceCoreFeature);
-
- void* getInstanceProcAddr ();
+ const std::vector<std::string>& getDeviceExtensions (void) const;
+ vk::VkDevice getDevice (void) const;
+ const vk::DeviceInterface& getDeviceInterface (void) const;
+ deUint32 getUniversalQueueFamilyIndex (void) const;
+ vk::VkQueue getUniversalQueue (void) const;
+ deUint32 getUsedApiVersion (void) const;
+ deUint32 getSparseQueueFamilyIndex (void) const;
+ vk::VkQueue getSparseQueue (void) const;
+ vk::Allocator& getDefaultAllocator (void) const;
+ bool contextSupports (const deUint32 majorNum, const deUint32 minorNum, const deUint32 patchNum) const;
+ bool contextSupports (const vk::ApiVersion version) const;
+ bool contextSupports (const deUint32 requiredApiVersionBits) const;
+ bool requireDeviceExtension (const std::string& required);
+ bool requireInstanceExtension (const std::string& required);
+ bool requireDeviceCoreFeature (const DeviceCoreFeature requiredDeviceCoreFeature);
+
+ void* getInstanceProcAddr ();
+ bool isBufferDeviceAddressSupported (void) const;
+ bool isBufferDeviceAddressKHRSupported (void) const;
+ bool isBufferDeviceAddressEXTSupported (void) const;
+ bool isBufferDeviceAddressWithCaptureReplaySupported (void) const;
+ bool isDescriptorIndexingSupported (void) const;
+
protected:
tcu::TestContext& m_testCtx;
const vk::PlatformInterface& m_platformInterface;