Allow fp16 denorm inputs to be flushed to zero.
authorStephen Clarke <stephen.clarke@imgtec.com>
Fri, 15 Jun 2018 13:09:03 +0000 (14:09 +0100)
committerAlexander Galazin <Alexander.Galazin@arm.com>
Thu, 28 Jun 2018 11:26:11 +0000 (07:26 -0400)
commit0b309a7ee9cc6af41493ffb4b68a6debbf701764
tree6004c2262d0dc7f4330286b931f2da767b61670b
parent2ad3da270c035c302cb70ae3cd5becb94eb0fdaa
Allow fp16 denorm inputs to be flushed to zero.

Added a new version of Compare16BitFloat for an fp16 input and a float
result.  Previously, the code was using the version for a float input
with an fp result and switching the original and returned values.
But this function is not symmetric: e.g. a denorm input and zero result
should be allowed, but a zero input and denorm result should not be
allowed.
Also removed the rounding modes parameter, since conversion from fp16
to float is exact.

Affects:
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_16struct_to_32struct.*
dEQP-VK.spirv_assembly.instruction.compute.16bit_storage.uniform_32struct_to_16struct.*
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.uniform_16struct_to_32struct.*
dEQP-VK.spirv_assembly.instruction.graphics.16bit_storage.uniform_32struct_to_16struct.*

Components: Vulkan

VK-GL-CTS issue: 1219

Change-Id: I96d01bb428b550de1e86a601b929d08b3131870d
external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsm16bitStorageTests.cpp
external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmGraphicsShaderTestUtil.cpp
external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmGraphicsShaderTestUtil.hpp