Mesa (master): st/mesa: Don't set atomic counter size != 0 if MAX_SHADER_BUFFERS == 0.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Thu Apr 25 00:25:02 UTC 2019


Module: Mesa
Branch: master
Commit: 97316d378379d6d440f285fdccd81e9d08b3397c
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=97316d378379d6d440f285fdccd81e9d08b3397c

Author: Eric Anholt <eric at anholt.net>
Date:   Wed Aug  1 16:07:45 2018 -0700

st/mesa: Don't set atomic counter size != 0 if MAX_SHADER_BUFFERS == 0.

This is just asking for tests to get confused about the HW supporting
atomics in this shader stage or not, such as
dEQP-GLES31.functional.shaders.opaque_type_indexing.atomic_counter.const_expression_vertex.

v2: Rebase on the other atomic cleanups that have happened since posting.
v3: Commit message tweak by Marek.

Signed-off-by: Eric Anholt <eric at anholt.net>
Reviewed-by: Marek Olšák <marek.olsak at amd.com>

---

 src/mesa/state_tracker/st_extensions.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index b23bd7c044d..cebc35a76a7 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -259,7 +259,7 @@ void st_init_limits(struct pipe_screen *screen,
           */
          pc->MaxAtomicCounters = temp;
          pc->MaxAtomicBuffers = screen->get_shader_param(screen, sh, PIPE_SHADER_CAP_MAX_HW_ATOMIC_COUNTER_BUFFERS);
-      } else {
+      } else if (pc->MaxShaderStorageBlocks) {
          pc->MaxAtomicCounters = MAX_ATOMIC_COUNTERS;
          /*
           * without separate atomic counters, reserve half of the available




More information about the mesa-commit mailing list