mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 09:38:07 +02:00
radeonsi: change TC cache flushing strategy for textures
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
This commit is contained in:
parent
ca9c5b2be5
commit
a1bbccf521
2 changed files with 6 additions and 4 deletions
|
|
@ -445,8 +445,6 @@ static void si_set_sampler_views(struct pipe_context *ctx,
|
|||
}
|
||||
}
|
||||
|
||||
sctx->b.flags |= SI_CONTEXT_INV_TC_L1 |
|
||||
SI_CONTEXT_INV_TC_L2;
|
||||
si_update_descriptors(sctx, &samplers->views.desc);
|
||||
}
|
||||
|
||||
|
|
@ -671,8 +669,6 @@ void si_update_vertex_buffers(struct si_context *sctx)
|
|||
* on performance (confirmed by testing). New descriptors are always
|
||||
* uploaded to a fresh new buffer, so I don't think flushing the const
|
||||
* cache is needed. */
|
||||
sctx->b.flags |= SI_CONTEXT_INV_TC_L1 |
|
||||
SI_CONTEXT_INV_TC_L2;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -2004,6 +2004,12 @@ static void si_set_framebuffer_state(struct pipe_context *ctx,
|
|||
SI_CONTEXT_FLUSH_AND_INV_DB_META;
|
||||
}
|
||||
|
||||
/* Only flush TC when changing the framebuffer state, because
|
||||
* the only client not using TC that can change textures is
|
||||
* the framebuffer. */
|
||||
sctx->b.flags |= SI_CONTEXT_INV_TC_L1 |
|
||||
SI_CONTEXT_INV_TC_L2;
|
||||
|
||||
util_copy_framebuffer_state(&sctx->framebuffer.state, state);
|
||||
|
||||
sctx->framebuffer.export_16bpc = 0;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue