Modify compute shader grid setup.
authorAnders Frostad Pedersen <anders.pedersen@arm.com>
Wed, 17 Jan 2018 11:05:45 +0000 (12:05 +0100)
committerSam Lin <samlin@google.com>
Wed, 17 Jan 2018 19:46:20 +0000 (19:46 +0000)
commita7c3d7520284ac140233d3fb16644e71fa65b359
treee2c53e9fe074f39e6d3a796ca2b374f869b19822
parent8d3d9ceddb8f58353557e0b4925f249227170133
Modify compute shader grid setup.

Modify how the grid is set up for compute shader draw indirect test,
in order to avoid verfication failures due to difference in
floating-point computations on the CPU vs the GPU.

The existing code assumes infinite FP precision.

This change will guarantee the next value of pos(X) to be equal to
the first value of pos(X+1), avoiding gaps/discontinuities.

Affects:
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawarrays_combined_grid_1000x1000_drawcount_1
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawarrays_combined_grid_1000x1000_drawcount_5000
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawarrays_combined_grid_1000x1000_drawcount_8
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawarrays_separate_grid_1000x1000_drawcount_1
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawarrays_separate_grid_1000x1000_drawcount_5000
dEQP-GLES31.functional.draw_indirect.compute_interop.large.drawarrays_separate_grid_1000x1000_drawcount_8

Bug: 71515808
Change-Id: I21fe8ec9ea48b15f6171265df802bc47be775f56
modules/gles31/functional/es31fDrawTests.cpp