mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-08 19:20:12 +01:00
iris: Emit single render target flush PIPE_CONTROL on format mismatch.
The big-hammer iris_flush_depth_and_render_caches() is largely redundant whenever a format mismatch is detected from iris_cache_flush_for_render(). There is no need to kick the depth, sampler nor constant caches in that case. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3875>
This commit is contained in:
parent
b928188493
commit
46adb83a29
1 changed files with 4 additions and 1 deletions
|
|
@ -402,7 +402,10 @@ iris_cache_flush_for_render(struct iris_batch *batch,
|
|||
_mesa_hash_table_insert_pre_hashed(batch->cache.render, bo->hash, bo,
|
||||
format_aux_tuple(format, aux_usage));
|
||||
} else if (entry->data != format_aux_tuple(format, aux_usage)) {
|
||||
iris_flush_depth_and_render_caches(batch);
|
||||
iris_emit_pipe_control_flush(batch,
|
||||
"cache tracker: render format mismatch",
|
||||
PIPE_CONTROL_RENDER_TARGET_FLUSH |
|
||||
PIPE_CONTROL_CS_STALL);
|
||||
entry->data = format_aux_tuple(format, aux_usage);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue