r600: Fix reading back from a temp array immediately after writing on RV770.
authorEmma Anholt <emma@anholt.net>
Sun, 3 Apr 2022 05:19:59 +0000 (22:19 -0700)
committerMarge Bot <emma+marge@anholt.net>
Wed, 20 Apr 2022 21:46:09 +0000 (21:46 +0000)
commit25836895f3d57dbfd4d13572c4bb8f2ea5938408
treec00acd71ef497cf01269f4e0e1cae751a52714ad
parent26189cdb1d2e66f1ddbda0a432bf875a7afd9339
r600: Fix reading back from a temp array immediately after writing on RV770.

KHR-GL33.shaders.indexing.tmp_array.vertexid regressed with the switch to
NIR-to-TGSI because the shader got optimized enough to emit a read just
after writing to the array (the kind of situation where a non-rel write
would have been followed by a PV/PS read).  The R600 and EG docs say you
always need to do this, but apparently some hardware gives you the right
answer anyway so we don't flag it on all of them.

Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14319>
src/gallium/drivers/r600/r600_asm.c