Ensure swizzle identities work with their equivalent mappings
authorRicardo Garcia <rgarcia@igalia.com>
Wed, 24 Jun 2020 16:36:37 +0000 (18:36 +0200)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Thu, 2 Jul 2020 06:59:55 +0000 (02:59 -0400)
commitbf5dec55313c4f78802be7e298d906e7ecb2b56a
treedc60f1d90c453b346656b714c357d3794b84f2f6
parent40c15fb078d827adcb8b62ad7b746a24e1bc2cfc
Ensure swizzle identities work with their equivalent mappings

In vulkan/vulkan!3399 the spec modified several points to clarify
anything requiring VK_COMPONENT_SWIZZLE_IDENTITY in a VkComponentMapping
member should also work with their equivalent mappings (SWIZZLE_R,
SWIZZLE_G, SWIZZLE_B and SWIZZLE_A for the .r, .g, .b and .a members
respectively).

This commit adds new test variants with equivalent values or modifies
existing tests so mappings are switched between the two possibilities
when generating or running tests, in a deterministic way.

Affected tests:
dEQP-VK.api.external.memory.android_hardware_buffer.image_formats.*
dEQP-VK.ycbcr.conversion.*

New tests:
dEQP-VK.texture.swizzle.component_mapping.*_rgba
dEQP-VK.texture.swizzle.component_mapping.*_iiii
dEQP-VK.texture.swizzle.component_mapping.*_abgr
dEQP-VK.pipeline.sampler.*.min_reduce.comp_r_zero_zero_zero.*
dEQP-VK.pipeline.sampler.*.mag_reduce.comp_r_zero_zero_zero.*

Components: Vulkan
VK-GL-CTS issue: 2384

Change-Id: I09fcadef9abcd56c3f5bca51425ba9b9e82a5507
android/cts/master/vk-master-2020-03-01.txt
android/cts/master/vk-master.txt
external/vulkancts/modules/vulkan/api/vktApiExternalMemoryTests.cpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineImageSamplingInstance.cpp
external/vulkancts/modules/vulkan/pipeline/vktPipelineSamplerTests.cpp
external/vulkancts/modules/vulkan/texture/vktTextureSwizzleTests.cpp
external/vulkancts/modules/vulkan/ycbcr/vktYCbCrConversionTests.cpp
external/vulkancts/mustpass/master/vk-default.txt