mesa/src/amd
Timur Kristóf 4ee6d68d1f aco: Wait for stores when NGG or legacy VS can finish early.
When there are no param exports in an NGG (or legacy VS) shader,
the NO_PC_EXPORT=1 is set, which means PS waves can launch before
the current stage finishes.

If the current stage has any stores, we need to make sure to wait for
those before we allow PS waves to start, so that PS can read what
these instructions stored.

Fossil DB results on Navi 10:
Totals from 45 (0.03% of 136420) affected shaders:
CodeSize: 87224 -> 87404 (+0.21%)
Instrs: 16750 -> 16795 (+0.27%)
Cycles: 69580 -> 69760 (+0.26%)
VMEM: 8022 -> 8167 (+1.81%)

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7868>
2021-01-12 16:43:27 +00:00
..
addrlib amd/addrlib: use cpp.has_argument() to filter compiler arguments 2021-01-05 11:29:11 +00:00
common ac/surface: initialize dcc_slice_size on GFX9+ 2021-01-11 15:42:22 +00:00
compiler aco: Wait for stores when NGG or legacy VS can finish early. 2021-01-12 16:43:27 +00:00
llvm ac/nir: implement sparse image/texture loads 2021-01-08 14:27:07 +00:00
registers amd/registers: add missing VRS registers 2020-12-14 16:22:38 +00:00
vulkan radv: enable .lower_ineg 2021-01-12 16:14:00 +00:00
Android.addrlib.mk android: amd/addrlib: add gfx10 support 2019-07-10 09:03:55 +02:00
Android.common.mk android: amd/registers: switch to new generated register definitions 2020-09-06 20:20:34 +02:00
Android.compiler.mk android: aco/isel: Move context initialization code to a dedicated file 2020-09-14 21:26:53 +02:00
Android.mk android: aco: add support for libmesa_aco 2019-09-28 15:56:34 +02:00
Makefile.sources android: ac/radv: fix typo in ac_rgp.h listed in Makefile.sources 2021-01-09 11:15:09 +01:00
meson.build aco: add framework for unit testing 2020-07-30 16:13:08 +00:00