radv/gfx10: fix a possible hang with exp pos0 with done=0 and exec=0
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
This commit is contained in:
parent
b3a53de5fa
commit
34b185cc43
|
@ -2989,6 +2989,14 @@ handle_vs_outputs_post(struct radv_shader_context *ctx,
|
|||
num_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->ac.family == CHIP_NAVI10 ||
|
||||
ctx->ac.family == CHIP_NAVI12 ||
|
||||
ctx->ac.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…
Reference in New Issue