r600/sfn: Handle mem barrier and image barrier by using ACK
authorGert Wollny <gert.wollny@collabora.com>
Wed, 7 Oct 2020 08:42:17 +0000 (10:42 +0200)
committerMarge Bot <eric+marge@anholt.net>
Fri, 16 Oct 2020 12:03:12 +0000 (12:03 +0000)
commit02e39b737a7c74486a7e66b9bb46eca63dbd1a75
treee970139bed3e399e51b698dadcdd516a15f62261
parentf664fc1c7b54e90a0bff5dd25be0381b6224cbbc
r600/sfn: Handle mem barrier and image barrier by using ACK

When reading from and writing to the same image in a shader the
memory_barrier can possibly be handled by emitting an ack-write and then
wait for the ack when the memory barrier is set.

Not sure whow well this goes with the syncronization across all shader
invocations though.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7142>
src/gallium/drivers/r600/sfn/sfn_emitssboinstruction.cpp
src/gallium/drivers/r600/sfn/sfn_emitssboinstruction.h
src/gallium/drivers/r600/sfn/sfn_instruction_gds.h
src/gallium/drivers/r600/sfn/sfn_shader_base.cpp