From db67e51903521f03fc772761368266e2c2174f6b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 5 Dec 2019 21:29:32 -0500 Subject: [PATCH] radeonsi: set is_monolithic for VS prologs when the shader is really monolithic This fixes a bug with NGG that is probably harmless. Basically, !is_monolithic makes the VS prolog emit llvm.amdgcn.init.exec.from.input, which sets the EXEC mask to only enable ES threads. In the NGG non-GS case, the GS threads <= ES threads, so it was never an issue. Reviewed-by: Pierre-Eric Pelloux-Prayer Part-of: --- src/gallium/drivers/radeonsi/si_shader.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c index 03fc1bef2bf..4453976ef9b 100644 --- a/src/gallium/drivers/radeonsi/si_shader.c +++ b/src/gallium/drivers/radeonsi/si_shader.c @@ -6939,6 +6939,7 @@ int si_compile_tgsi_shader(struct si_screen *sscreen, shader->info.num_input_sgprs, &shader->key.part.vs.prolog, shader, &prolog_key); + prolog_key.vs_prolog.is_monolithic = true; si_build_vs_prolog_function(&ctx, &prolog_key); parts[0] = ctx.main_fn; } -- 2.30.2