Fix wrong calculation to check diff between floats.

Affects:
dEQP-VK.spirv_assembly.instruction.graphics.variable_pointers.graphics.*

Components: Vulkan

VK-GL-CTS issue: 3916

Change-Id: I05d2b7375c0bd34b6b7fffabbfe52969009ea218
diff --git a/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmGraphicsShaderTestUtil.cpp b/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmGraphicsShaderTestUtil.cpp
index 90ab988..7dc909d 100644
--- a/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmGraphicsShaderTestUtil.cpp
+++ b/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmGraphicsShaderTestUtil.cpp
@@ -4621,8 +4621,9 @@
 								return tcu::TestStatus::fail("Value returned is invalid");
 
 							diff = outputFloats[expectedNdx] - expectedFloats[expectedNdx];
+							deUint32 intDiff = static_cast<deUint32>(diff);
 
-							if ((diff < 0.0f) || (deFloatFloor(diff) != diff))
+							if ((diff < 0.0f) || (expectedFloats[expectedNdx] + static_cast<float>(intDiff)) != outputFloats[expectedNdx])
 								return tcu::TestStatus::fail("Value returned should be equal to expected value plus non-negative integer");
 						}
 						else