intel/fs: Only stall after sending all memory fence messages
authorCaio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
Fri, 17 Jan 2020 22:17:58 +0000 (14:17 -0800)
committerMarge Bot <eric+marge@anholt.net>
Wed, 29 Apr 2020 07:17:27 +0000 (07:17 +0000)
commita3cba3c771e68cddb644a3520bcc68bd6dfce07c
treee52333bc772e259bb895e7bc243da0b7fa722b7e
parentf858fa26b4cca8834c8687f01d2ba431fcc8e006
intel/fs: Only stall after sending all memory fence messages

In Gen11+, when emitting a fence for both L3 and SLM, the generated
code would look like

    SEND, MOV (for stall), SEND, MOV (for stall)

This commit change that so two SENDs are emitted before the MOVs for
stall.  This is similar to the approach used in Ivy Bridge for the
render fence.

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3278>
src/intel/compiler/brw_fs_nir.cpp