From 9312e3158fb32444d7d29bf592a33308c7e17a0f Mon Sep 17 00:00:00 2001 From: Pyry Haulos Date: Thu, 14 Apr 2016 10:51:45 -0700 Subject: [PATCH] Fix VkPhysicalDeviceProperties init validation dEQP-VK.api.info.device.properties was using incorrect member offset table to verify initialization of VkPhysicalDeviceProperties. Fixes #367 --- .../modules/vulkan/api/vktApiFeatureInfo.cpp | 228 +++++++++++---------- 1 file changed, 120 insertions(+), 108 deletions(-) diff --git a/external/vulkancts/modules/vulkan/api/vktApiFeatureInfo.cpp b/external/vulkancts/modules/vulkan/api/vktApiFeatureInfo.cpp index 41a9633..1b03f0e 100644 --- a/external/vulkancts/modules/vulkan/api/vktApiFeatureInfo.cpp +++ b/external/vulkancts/modules/vulkan/api/vktApiFeatureInfo.cpp @@ -673,114 +673,126 @@ tcu::TestStatus deviceProperties (Context& context) VkPhysicalDeviceFeatures features; deUint8 buffer[sizeof(VkPhysicalDeviceProperties) + GUARD_SIZE]; - const QueryMemberTableEntry limitOffsetTable[] = + const QueryMemberTableEntry physicalDevicePropertiesOffsetTable[] = { - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxImageDimension1D), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxImageDimension2D), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxImageDimension3D), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxImageDimensionCube), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxImageArrayLayers), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxTexelBufferElements), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxUniformBufferRange), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxStorageBufferRange), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxPushConstantsSize), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxMemoryAllocationCount), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxSamplerAllocationCount), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, bufferImageGranularity), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, sparseAddressSpaceSize), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxBoundDescriptorSets), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxPerStageDescriptorSamplers), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxPerStageDescriptorUniformBuffers), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxPerStageDescriptorStorageBuffers), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxPerStageDescriptorSampledImages), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxPerStageDescriptorStorageImages), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxPerStageDescriptorInputAttachments), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxPerStageResources), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxDescriptorSetSamplers), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxDescriptorSetUniformBuffers), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxDescriptorSetUniformBuffersDynamic), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxDescriptorSetStorageBuffers), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxDescriptorSetStorageBuffersDynamic), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxDescriptorSetSampledImages), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxDescriptorSetStorageImages), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxDescriptorSetInputAttachments), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxVertexInputAttributes), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxVertexInputBindings), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxVertexInputAttributeOffset), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxVertexInputBindingStride), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxVertexOutputComponents), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxTessellationGenerationLevel), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxTessellationPatchSize), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxTessellationControlPerVertexInputComponents), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxTessellationControlPerVertexOutputComponents), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxTessellationControlPerPatchOutputComponents), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxTessellationControlTotalOutputComponents), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxTessellationEvaluationInputComponents), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxTessellationEvaluationOutputComponents), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxGeometryShaderInvocations), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxGeometryInputComponents), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxGeometryOutputComponents), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxGeometryOutputVertices), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxGeometryTotalOutputComponents), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxFragmentInputComponents), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxFragmentOutputAttachments), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxFragmentDualSrcAttachments), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxFragmentCombinedOutputResources), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxComputeSharedMemorySize), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxComputeWorkGroupCount[3]), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxComputeWorkGroupInvocations), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxComputeWorkGroupSize[3]), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, subPixelPrecisionBits), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, subTexelPrecisionBits), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, mipmapPrecisionBits), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxDrawIndexedIndexValue), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxDrawIndirectCount), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxSamplerLodBias), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxSamplerAnisotropy), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxViewports), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxViewportDimensions[2]), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, viewportBoundsRange[2]), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, viewportSubPixelBits), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, minMemoryMapAlignment), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, minTexelBufferOffsetAlignment), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, minUniformBufferOffsetAlignment), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, minStorageBufferOffsetAlignment), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, minTexelOffset), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxTexelOffset), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, minTexelGatherOffset), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxTexelGatherOffset), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, minInterpolationOffset), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxInterpolationOffset), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, subPixelInterpolationOffsetBits), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxFramebufferWidth), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxFramebufferHeight), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxFramebufferLayers), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, framebufferColorSampleCounts), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, framebufferDepthSampleCounts), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, framebufferStencilSampleCounts), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, framebufferNoAttachmentsSampleCounts), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxColorAttachments), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, sampledImageColorSampleCounts), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, sampledImageIntegerSampleCounts), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, sampledImageDepthSampleCounts), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, sampledImageStencilSampleCounts), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, storageImageSampleCounts), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxSampleMaskWords), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, timestampComputeAndGraphics), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, timestampPeriod), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxClipDistances), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxCullDistances), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, maxCombinedClipAndCullDistances), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, discreteQueuePriorities), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, pointSizeRange[2]), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, lineWidthRange[2]), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, pointSizeGranularity), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, lineWidthGranularity), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, strictLines), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, standardSampleLocations), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, optimalBufferCopyOffsetAlignment), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, optimalBufferCopyRowPitchAlignment), - OFFSET_TABLE_ENTRY(VkPhysicalDeviceLimits, nonCoherentAtomSize), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, apiVersion), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, driverVersion), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, vendorID), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, deviceID), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, deviceType), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, deviceName), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, pipelineCacheUUID), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxImageDimension1D), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxImageDimension2D), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxImageDimension3D), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxImageDimensionCube), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxImageArrayLayers), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxTexelBufferElements), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxUniformBufferRange), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxStorageBufferRange), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxPushConstantsSize), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxMemoryAllocationCount), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxSamplerAllocationCount), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.bufferImageGranularity), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.sparseAddressSpaceSize), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxBoundDescriptorSets), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxPerStageDescriptorSamplers), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxPerStageDescriptorUniformBuffers), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxPerStageDescriptorStorageBuffers), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxPerStageDescriptorSampledImages), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxPerStageDescriptorStorageImages), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxPerStageDescriptorInputAttachments), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxPerStageResources), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxDescriptorSetSamplers), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxDescriptorSetUniformBuffers), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxDescriptorSetUniformBuffersDynamic), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxDescriptorSetStorageBuffers), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxDescriptorSetStorageBuffersDynamic), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxDescriptorSetSampledImages), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxDescriptorSetStorageImages), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxDescriptorSetInputAttachments), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxVertexInputAttributes), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxVertexInputBindings), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxVertexInputAttributeOffset), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxVertexInputBindingStride), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxVertexOutputComponents), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxTessellationGenerationLevel), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxTessellationPatchSize), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxTessellationControlPerVertexInputComponents), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxTessellationControlPerVertexOutputComponents), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxTessellationControlPerPatchOutputComponents), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxTessellationControlTotalOutputComponents), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxTessellationEvaluationInputComponents), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxTessellationEvaluationOutputComponents), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxGeometryShaderInvocations), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxGeometryInputComponents), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxGeometryOutputComponents), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxGeometryOutputVertices), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxGeometryTotalOutputComponents), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxFragmentInputComponents), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxFragmentOutputAttachments), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxFragmentDualSrcAttachments), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxFragmentCombinedOutputResources), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxComputeSharedMemorySize), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxComputeWorkGroupCount[3]), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxComputeWorkGroupInvocations), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxComputeWorkGroupSize[3]), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.subPixelPrecisionBits), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.subTexelPrecisionBits), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.mipmapPrecisionBits), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxDrawIndexedIndexValue), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxDrawIndirectCount), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxSamplerLodBias), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxSamplerAnisotropy), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxViewports), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxViewportDimensions[2]), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.viewportBoundsRange[2]), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.viewportSubPixelBits), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.minMemoryMapAlignment), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.minTexelBufferOffsetAlignment), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.minUniformBufferOffsetAlignment), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.minStorageBufferOffsetAlignment), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.minTexelOffset), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxTexelOffset), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.minTexelGatherOffset), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxTexelGatherOffset), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.minInterpolationOffset), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxInterpolationOffset), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.subPixelInterpolationOffsetBits), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxFramebufferWidth), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxFramebufferHeight), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxFramebufferLayers), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.framebufferColorSampleCounts), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.framebufferDepthSampleCounts), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.framebufferStencilSampleCounts), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.framebufferNoAttachmentsSampleCounts), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxColorAttachments), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.sampledImageColorSampleCounts), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.sampledImageIntegerSampleCounts), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.sampledImageDepthSampleCounts), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.sampledImageStencilSampleCounts), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.storageImageSampleCounts), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxSampleMaskWords), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.timestampComputeAndGraphics), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.timestampPeriod), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxClipDistances), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxCullDistances), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.maxCombinedClipAndCullDistances), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.discreteQueuePriorities), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.pointSizeRange[2]), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.lineWidthRange[2]), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.pointSizeGranularity), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.lineWidthGranularity), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.strictLines), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.standardSampleLocations), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.optimalBufferCopyOffsetAlignment), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.optimalBufferCopyRowPitchAlignment), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, limits.nonCoherentAtomSize), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, sparseProperties.residencyStandard2DBlockShape), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, sparseProperties.residencyStandard2DMultisampleBlockShape), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, sparseProperties.residencyStandard3DBlockShape), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, sparseProperties.residencyAlignedMipSize), + OFFSET_TABLE_ENTRY(VkPhysicalDeviceProperties, sparseProperties.residencyNonResidentStrict), { 0, 0 } }; @@ -805,7 +817,7 @@ tcu::TestStatus deviceProperties (Context& context) } } - if (!validateInitComplete(context.getPhysicalDevice(), &InstanceInterface::getPhysicalDeviceProperties, context.getInstanceInterface(), limitOffsetTable)) + if (!validateInitComplete(context.getPhysicalDevice(), &InstanceInterface::getPhysicalDeviceProperties, context.getInstanceInterface(), physicalDevicePropertiesOffsetTable)) { log << TestLog::Message << "deviceProperties - VkPhysicalDeviceProperties not completely initialized" << TestLog::EndMessage; return tcu::TestStatus::fail("deviceProperties incomplete initialization"); -- 2.7.4