I didn't see DXIL support as being particularly relevant to 1.9 because it would be the barest minimum, but I realise it's meaningful as a milestone to have a test pass. Are there other reasons I'm not aware of?
Having just dealt with temps in CFGs, I think SSA -> temp conversion may be reasonable to implement, with a risk of getting caught up in edge cases. It would allow deletion of all the phi complications in the structuriser, which may be more than enough to justify it. It could also break the structuriser and make the project take a lot longer than expected. Also, we could clean up the SPIR-V code by emitting all temp access chains in the entry block with a build-once function, and name them, e.g. `r0.x_ptr`. Then optimise away many loads/stores by tracking and reusing result values within blocks. This is just to make debugging easier.
If I test this before the 1.9 release and it works out okay then SSA can be removed from the MR and it will be ready right after 1.9. But the shader runner tests come first.