mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-08 11:18:08 +02:00
ir3: make indexing instructions optional in ir3_merge_regs
While fixing up merge sets after spilling, we need to index before
calling ir3_merge_regs so it would be a waste to index again.
Fixes: 613eaac7b5 ("ir3: Initial support for spilling non-shared registers")
Signed-off-by: Job Noorman <jnoorman@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29497>
This commit is contained in:
parent
17b155fede
commit
018d0ab805
3 changed files with 2 additions and 2 deletions
|
|
@ -565,8 +565,6 @@ dump_merge_sets(struct ir3 *ir)
|
|||
void
|
||||
ir3_merge_regs(struct ir3_liveness *live, struct ir3 *ir)
|
||||
{
|
||||
ir3_index_instrs_for_merge_sets(ir);
|
||||
|
||||
/* First pass: coalesce phis, which must be together. */
|
||||
foreach_block (block, &ir->block_list) {
|
||||
foreach_instr (instr, &block->instr_list) {
|
||||
|
|
|
|||
|
|
@ -2564,6 +2564,7 @@ ir3_ra(struct ir3_shader_variant *v)
|
|||
|
||||
ir3_debug_print(v->ir, "AFTER: create_parallel_copies");
|
||||
|
||||
ir3_index_instrs_for_merge_sets(v->ir);
|
||||
ir3_merge_regs(live, v->ir);
|
||||
|
||||
bool has_shared_vectors = false;
|
||||
|
|
|
|||
|
|
@ -2115,6 +2115,7 @@ fixup_merge_sets(struct ir3_liveness *live, struct ir3 *ir)
|
|||
}
|
||||
}
|
||||
|
||||
ir3_index_instrs_for_merge_sets(ir);
|
||||
ir3_merge_regs(live, ir);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue