Once branched shaders are supported, assigning temps will require parsing the code graph to check all possible paths for temp usage. DXIL code graphs are spaghetti, and this is not a problem I am interested in solving.
We encounter some issue that can't reasonably be resolved with vsir temps.
vsir temps can't reasonably be assigned without a lot of work which doesn't need to be done.
SPIR-V converted from DXIL is already somewhat bloated because it does nearly everything with scalars. Adding all the access chains, loads, stores and some bitcasts will make the shaders much larger.
I see no cause for concern with `VKD3DSPR_SSA`. It's a new register type not used in TPF, the new code is not executed for TPF, and aside from a few checks for the new type it has no effect on existing code.