Add tests for VK_EXT_sampler_filter_minmax
authorSlawomir Cygan <slawomir.cygan@intel.com>
Mon, 31 Jul 2017 16:51:55 +0000 (18:51 +0200)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Wed, 10 Jan 2018 10:39:11 +0000 (05:39 -0500)
commit4cc5f3def87cacc1590706d712e915f66640a1f0
treea8b1e97cf722cfbff1b65dc04d6673a3c2dedb27
parent86022fac0127985f589633f307c02142a353418d
Add tests for VK_EXT_sampler_filter_minmax

This adds testing coverage for VK_EXT_sampler_filter_minmax extension,
that extends sampler by adding MIN/MAX/AVERAGE reduction filters.

Framework changes:
Add support for reduction modes in tcu: Sampler and TexLookupVerifier

Vulkan changes:
Add support for depth and depth/stencil images,
non-trivial component mappings (including ZERO and ONE swizzlers)
dEQP-VK.pipeline.sampler tests.

If filterMinmaxImageComponentMapping is enabled, check
required VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT
flag in dEQP-VK.api.* tests.

Affects:
dEQP-VK.api.info.format_properties.*

New tests:
dEQP-VK.pipeline.sampler.view_type.*.format.(any color format).min_reduce.*
dEQP-VK.pipeline.sampler.view_type.*.format.(any color format).mag_reduce.*
dEQP-VK.pipeline.sampler.view_type.*.format.(any depth format)

Components: Framework, Vulkan

VK-GL-CTS issue: 627

Change-Id: Icd4be2517a0dcc91b32444dd805010c804c4c3fd
18 files changed:
android/cts/master/vk-master.txt
external/vulkancts/framework/vulkan/vkBasicTypes.inl
external/vulkancts/framework/vulkan/vkGetStructureTypeImpl.inl
external/vulkancts/framework/vulkan/vkImageUtil.cpp
external/vulkancts/framework/vulkan/vkImageUtil.hpp
external/vulkancts/framework/vulkan/vkStrUtil.inl
external/vulkancts/framework/vulkan/vkStrUtilImpl.inl
external/vulkancts/framework/vulkan/vkStructTypes.inl
external/vulkancts/modules/vulkan/api/vktApiFeatureInfo.cpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineImageSamplingInstance.cpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineImageSamplingInstance.hpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineImageUtil.cpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineImageUtil.hpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineSamplerTests.cpp
external/vulkancts/mustpass/1.0.3/vk-default.txt
external/vulkancts/scripts/src/vulkan.h.in
framework/common/tcuTexLookupVerifier.cpp
framework/common/tcuTexture.hpp