Giovanni Mascellani (@giomasce) commented about libs/vkd3d-shader/ir.c:
goto fail; }
+ if (!ssas_to_temps_alloc_init(&alloc, program->ssa_count, program->temp_count)) + goto fail; + for (i = 0, phi_count = 0, incoming_count = 0; i < program->instructions.count; ++i) { struct vkd3d_shader_instruction *ins = &program->instructions.elements[i]; - unsigned int j; + unsigned int j, temp_idx;
+ /* Only phi src/dst SSA values need be converted here. Structurisation may + * introduce new cases of undominated SSA use, which will be handled later. */
That makes sense, but then we should also rename the pass, otherwise its name becomes misleading. Something like `vsir_program_materialize_phi_ssas_to_temps()`. -- https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/749#note_66916