Memory binding tests not invaidating host memory before results check.
Affected tests:
dEQP-VK.memory.binding.*.buffer_*
Components: Vulkan
VK-GL-CTS issue: 1214
Change-Id: Ib347401ee818a42487df001f3ba76247b157321c
diff --git a/external/vulkancts/modules/vulkan/memory/vktMemoryBindingTests.cpp b/external/vulkancts/modules/vulkan/memory/vktMemoryBindingTests.cpp
index 6e47e24..3764625 100644
--- a/external/vulkancts/modules/vulkan/memory/vktMemoryBindingTests.cpp
+++ b/external/vulkancts/modules/vulkan/memory/vktMemoryBindingTests.cpp
@@ -93,6 +93,14 @@
VK_CHECK(vk.flushMappedMemoryRanges(dev, 1u, &range));
}
+ void invalidate (VkDeviceSize offset,
+ VkDeviceSize size)
+ {
+ const VkMappedMemoryRange range = makeMemoryRange(offset, size);
+ VK_CHECK(vk.invalidateMappedMemoryRanges(dev, 1u, &range));
+ }
+
+
protected:
const DeviceInterface& vk;
const VkDevice& dev;
@@ -818,6 +826,8 @@
deUint8* hostBuffer = static_cast<deUint8*>(hostMemory.ptr());
SimpleRandomGenerator random (dataSeed);
+ hostMemory.invalidate(0u, params.bufferSize);
+
for (deUint32 i = 0u; i < params.bufferSize; ++i)
{
if (hostBuffer[i] != static_cast<deUint8>(random.getNext() & 0xFFu) )