radeonsi: fix VS kill_outputs handling
981bd8cbe2
moved outputs removing handling to NIR, but instead of applying it only to the last stage before the FS this now applies it to both the GS and the VS. This commit fixes this by clearing the kill_outputs field for the VS when using a ES-GS shader. Fixes:981bd8cbe2
("radeonsi: apply key.ge.opt.kill_{outputs,pointsize,clipdistance} in NIR") Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16249>
This commit is contained in:
parent
8a525c0fa5
commit
529f316d87
|
@ -1223,6 +1223,8 @@ bool si_llvm_compile_shader(struct si_screen *sscreen, struct ac_llvm_compiler *
|
|||
shader_es.key.ge.mono = shader->key.ge.mono;
|
||||
shader_es.key.ge.opt = shader->key.ge.opt;
|
||||
shader_es.key.ge.opt.inline_uniforms = false; /* only GS can inline uniforms */
|
||||
/* kill_outputs was computed based on GS outputs so we can't use it to kill VS outputs */
|
||||
shader_es.key.ge.opt.kill_outputs = 0;
|
||||
shader_es.is_monolithic = true;
|
||||
|
||||
nir = si_get_nir_shader(es, &shader_es.key, &free_nir);
|
||||
|
|
Loading…
Reference in New Issue