diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c index 5d94f8c2b77..0f6f637550f 100644 --- a/src/amd/vulkan/radv_shader.c +++ b/src/amd/vulkan/radv_shader.c @@ -195,6 +195,7 @@ radv_optimize_nir(struct nir_shader *shader, bool optimize_conservatively) NIR_LOOP_PASS(progress, skip, shader, nir_opt_constant_folding); NIR_LOOP_PASS(progress, skip, shader, nir_opt_intrinsics); NIR_LOOP_PASS_NOT_IDEMPOTENT(progress, skip, shader, nir_opt_algebraic); + NIR_LOOP_PASS(progress, skip, shader, nir_opt_phi_to_bool); NIR_LOOP_PASS(progress, skip, shader, nir_opt_undef); @@ -232,6 +233,7 @@ radv_optimize_nir_algebraic(nir_shader *nir, bool opt_offsets, bool opt_mqsad) .discard_ok = true, }; NIR_PASS(_, nir, nir_opt_peephole_select, &peephole_select_options); + NIR_PASS(_, nir, nir_opt_phi_to_bool); NIR_PASS(more_algebraic, nir, nir_opt_algebraic); NIR_PASS(_, nir, nir_opt_generate_bfi); NIR_PASS(_, nir, nir_opt_remove_phis);