Goes atop !471. The last six commits belong to this MR.
-- v5: vkd3d-shader/dxil: Emit constant global arrays as immediate constant buffers. vkd3d-shader: Add a register index to struct vkd3d_shader_immediate_constant_buffer. vkd3d-shader/spirv: Support declared component type and count in immediate constant buffers. vkd3d-shader/spirv: Support constant initialisers in indexable temps. vkd3d-shader/dxil: Support null constant arrays. vkd3d-shader/spirv: Support declared component type and count in indexable temps.