mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-27 01:50:10 +01:00
radeonsi/gfx10: fix a possible hang with exp pos0 with done=0 and exec=0
Acked-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
This commit is contained in:
parent
683cf11b81
commit
1e39c21c23
1 changed files with 8 additions and 0 deletions
|
|
@ -3021,6 +3021,14 @@ void si_llvm_export_vs(struct si_shader_context *ctx,
|
|||
if (pos_args[i].out[0])
|
||||
shader->info.nr_pos_exports++;
|
||||
|
||||
/* Navi10-14 skip POS0 exports if EXEC=0 and DONE=0, causing a hang.
|
||||
* Setting valid_mask=1 prevents it and has no other effect.
|
||||
*/
|
||||
if (ctx->screen->info.family == CHIP_NAVI10 ||
|
||||
ctx->screen->info.family == CHIP_NAVI12 ||
|
||||
ctx->screen->info.family == CHIP_NAVI14)
|
||||
pos_args[0].valid_mask = 1;
|
||||
|
||||
pos_idx = 0;
|
||||
for (i = 0; i < 4; i++) {
|
||||
if (!pos_args[i].out[0])
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue