freedreno/ir3: Skip tess epilogue if the program is missing stores.

Some of the negative API tests make shaders for tess stages that don't do
all the stores they need to.  Once we start precompiling (or doing
shader-db of tess), we need to at least not segfault when generating them.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4562>
This commit is contained in:
Eric Anholt 2020-04-21 15:30:49 -07:00 committed by Marge Bot
parent fd8f3b62a4
commit f91e49ee29
1 changed files with 3 additions and 0 deletions

View File

@ -524,6 +524,9 @@ emit_tess_epilouge(nir_builder *b, struct state *state)
nir_ssa_def *tessfactor_address = nir_load_tess_factor_base_ir3(b);
nir_ssa_def *levels[2];
if (!state->outer_levels[0])
return;
/* Then emit the epilogue that actually writes out the tessellation levels
* to the BOs.
*/