diff options
-rw-r--r-- | src/gallium/drivers/radeonsi/si_state_shaders.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c index cb5f78ba23f..30ff33b56c3 100644 --- a/src/gallium/drivers/radeonsi/si_state_shaders.c +++ b/src/gallium/drivers/radeonsi/si_state_shaders.c @@ -3842,15 +3842,9 @@ bool si_update_shaders(struct si_context *sctx) if (sctx->gs_shader.cso) key.u.gs = 1; - if (sctx->chip_class >= GFX10) { - key.u.ngg = sctx->ngg; - - if (sctx->gs_shader.cso) - key.u.streamout = !!sctx->gs_shader.cso->so.num_outputs; - else if (sctx->tes_shader.cso) - key.u.streamout = !!sctx->tes_shader.cso->so.num_outputs; - else - key.u.streamout = !!sctx->vs_shader.cso->so.num_outputs; + if (sctx->ngg) { + key.u.ngg = 1; + key.u.streamout = !!si_get_vs(sctx)->cso->so.num_outputs; } /* Update TCS and TES. */ |