While we're touching this, I'd suggest introducing a structure like this:
struct vsir_program { struct vkd3d_shader_desc shader_desc; struct vkd3d_shader_version shader_version; struct vkd3d_shader_instruction_array instructions; };
Actually, I went ahead and wrote those patches; they should make it into an MR one of these days.