Allow higher precision temp buffer in blend tests
authorJari Komppa <jari.komppa@siru.fi>
Mon, 10 Jul 2017 12:31:11 +0000 (15:31 +0300)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Thu, 20 Jul 2017 16:20:12 +0000 (12:20 -0400)
commitc95d470d3508a4212b4ae87fbf7ee6e8c6fc45e7
treeeb3c965c37e41fd822f82b49fd8c7a543ba81cac
parent3890a411e1df7421b95bbdbff43f0763f323675f
Allow higher precision temp buffer in blend tests

Some blend tests were disabled because the results differ on
implementations that store the intermediate values in higher precision,
and only store the final result in the target buffer format.

This change enables the tests, and adds two additional legal results for
the tests. If none of the channels in the target buffer format exceed
8 bits, comparison against a 8888 buffer result is checked. If that
fails, or some channel is wider than 8 bits, comparison against a F64
buffer is done.

The 8888 and F64 results are first converted to the target buffer
format, and comparison threshold is the same as with the direct
comparison (dependent on the target buffer precision).

The higher precision tests are not done for formats where all channels
fit into 8, 16 or 32 bit formats.

Affects:

dEQP-VK.pipeline.blend.format.*

Components: Vulkan

VK-GL-CTS issue: 105

Change-Id: I26d99df151d9602bf9600b1694c3165990b93841
external/vulkancts/modules/vulkan/pipeline/vktPipelineBlendTests.cpp
external/vulkancts/mustpass/1.0.3/src/excluded-tests.txt
external/vulkancts/mustpass/1.0.3/vk-default.txt