From b501ef164ed772e7445ba1a86ac750a37476c913 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Fri, 3 Nov 2017 12:23:01 +1000 Subject: st/mesa: handle compute atomics MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Just reuse the cs atomics bit and emit the hw atomic state. Reviewed-by: Nicolai Hähnle Signed-off-by: Dave Airlie --- src/mesa/state_tracker/st_atom_atomicbuf.c | 4 ++++ src/mesa/state_tracker/st_context.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mesa/state_tracker/st_atom_atomicbuf.c b/src/mesa/state_tracker/st_atom_atomicbuf.c index d01c227acdd..eda9e51b581 100644 --- a/src/mesa/state_tracker/st_atom_atomicbuf.c +++ b/src/mesa/state_tracker/st_atom_atomicbuf.c @@ -123,6 +123,10 @@ st_bind_tes_atomics(struct st_context *st) void st_bind_cs_atomics(struct st_context *st) { + if (st->has_hw_atomics) { + st_bind_hw_atomic_buffers(st); + return; + } struct gl_program *prog = st->ctx->_Shader->CurrentProgram[MESA_SHADER_COMPUTE]; diff --git a/src/mesa/state_tracker/st_context.c b/src/mesa/state_tracker/st_context.c index da1cca471ba..7564a530352 100644 --- a/src/mesa/state_tracker/st_context.c +++ b/src/mesa/state_tracker/st_context.c @@ -302,7 +302,7 @@ st_init_driver_flags(struct st_context *st) /* Shader resources */ f->NewTextureBuffer = ST_NEW_SAMPLER_VIEWS; if (st->has_hw_atomics) - f->NewAtomicBuffer = ST_NEW_HW_ATOMICS; + f->NewAtomicBuffer = ST_NEW_HW_ATOMICS | ST_NEW_CS_ATOMICS; else f->NewAtomicBuffer = ST_NEW_ATOMIC_BUFFER; f->NewShaderStorageBuffer = ST_NEW_STORAGE_BUFFER; -- cgit v1.2.3