[Piglit] [PATCH] crucible/ssbo/interleave: Fix incorrect verification of the result
Danylo Piliaiev
danylo.piliaiev at gmail.com
Wed Jul 25 09:51:16 UTC 2018
Fix out of bounds access to map_out which has only 1024 uint32_t.
Fix assert condition which was exact oposite of the correct one.
As a result test now is expected to fail until
https://github.com/KhronosGroup/glslang/issues/94 is resolved.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107371
Signed-off-by: Danylo Piliaiev <danylo.piliaiev at globallogic.com>
---
src/tests/func/ssbo/interleave.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/tests/func/ssbo/interleave.c b/src/tests/func/ssbo/interleave.c
index 6b42e75..282effa 100644
--- a/src/tests/func/ssbo/interleave.c
+++ b/src/tests/func/ssbo/interleave.c
@@ -201,11 +201,11 @@ test(void)
qoQueueWaitIdle(t_queue);
uint32_t *map_out = qoMapMemory(t_device, mem_out, 0, 4096, 0);
- for (unsigned i = 0; i < 1024; i++) {
- t_assertf(map_out[i * 4 + 0] != i * 4 + 0 ||
- map_out[i * 4 + 1] != i * 4 + 2 ||
- map_out[i * 4 + 2] != i * 4 + 1 ||
- map_out[i * 4 + 3] != i * 4 + 3,
+ for (unsigned i = 0; i < 256; i++) {
+ t_assertf(map_out[i * 4 + 0] == i * 4 + 0 &&
+ map_out[i * 4 + 1] == i * 4 + 2 &&
+ map_out[i * 4 + 2] == i * 4 + 1 &&
+ map_out[i * 4 + 3] == i * 4 + 3,
"buffer mismatch at uvec4 %d: found (%u, %u, %u, %u), "
"expected (%u, %u, %u, %u)", i,
map_out[i * 4 + 0], map_out[i * 4 + 1],
--
2.17.1
More information about the Piglit
mailing list