[Piglit] [PATCH 1/2] arb_compute_shader: Support ID tests with work group sizes of 0
Jordan Justen
jordan.l.justen at intel.com
Tue Feb 16 16:27:40 UTC 2016
The ARB_compute_shader spec says:
"If the work group count in any dimension is zero, no work groups
are dispatched."
Signed-off-by: Jordan Justen <jordan.l.justen at intel.com>
---
tests/spec/arb_compute_shader/cs-ids-common.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tests/spec/arb_compute_shader/cs-ids-common.c b/tests/spec/arb_compute_shader/cs-ids-common.c
index 9676c82..e5987d3 100644
--- a/tests/spec/arb_compute_shader/cs-ids-common.c
+++ b/tests/spec/arb_compute_shader/cs-ids-common.c
@@ -135,7 +135,8 @@ confirm_size()
memset(&values, 0, sizeof values);
- for (z = 0; z < zs; z++) {
+ const bool no_work = global_x == 0 || global_y == 0 || global_z == 0;
+ for (z = 0; z < zs && !no_work; z++) {
for (y = 0; y < ys; y++) {
for (x = 0; x < xs; x++) {
if (((x & y) & z) == 0u)
@@ -280,8 +281,7 @@ cs_ids_run_test()
local_x, local_y, local_z,
global_x, global_y, global_z);
- if (local_x == 0 || local_y == 0 || local_z == 0 ||
- global_x == 0 || global_y == 0 || global_z == 0)
+ if (local_x == 0 || local_y == 0 || local_z == 0)
return PIGLIT_FAIL;
glBindBufferBase(GL_ATOMIC_COUNTER_BUFFER, 0, atomics_bo);
--
2.7.0
More information about the Piglit
mailing list