mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-10 16:50:13 +01:00
ir3: run 64b phi lowering together with other 64b lowerings
nir_lower_64bit_phis was run in ir3_optimize_loop where it would fight with nir_opt_if, causing shader compilation hangs. There's no point in running this pass in the optimization loop as 64b phis should be lowered together with the other 64b operations and then never appear again. Signed-off-by: Job Noorman <jnoorman@igalia.com> Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10355 Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31455>
This commit is contained in:
parent
ad12886775
commit
c515d4bd81
1 changed files with 1 additions and 1 deletions
|
|
@ -351,7 +351,6 @@ ir3_optimize_loop(struct ir3_compiler *compiler, nir_shader *s)
|
|||
}
|
||||
progress |= OPT(s, nir_opt_if, nir_opt_if_optimize_phi_true_false);
|
||||
progress |= OPT(s, nir_opt_loop_unroll);
|
||||
progress |= OPT(s, nir_lower_64bit_phis);
|
||||
progress |= OPT(s, nir_opt_remove_phis);
|
||||
progress |= OPT(s, nir_opt_undef);
|
||||
did_progress |= progress;
|
||||
|
|
@ -992,6 +991,7 @@ ir3_nir_lower_variant(struct ir3_shader_variant *so, nir_shader *s)
|
|||
progress |= OPT(s, ir3_nir_lower_64b_undef);
|
||||
progress |= OPT(s, nir_lower_int64);
|
||||
progress |= OPT(s, ir3_nir_lower_64b_intrinsics);
|
||||
progress |= OPT(s, nir_lower_64bit_phis);
|
||||
|
||||
/* Cleanup code leftover from lowering passes before opt_preamble */
|
||||
if (progress) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue