Goes atop !471. The last six commits belong to this MR.
-- v4: 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. vkd3d-shader/dxil: Implement the DXIL LOAD instruction. vkd3d-shader/dxil: Implement the DXIL GEP instruction. vkd3d-shader/dxil: Support global variable initialisers. vkd3d-shader/dxil: Introduce a value type for immediate constant buffers. vkd3d-shader/dxil: Implement default address space global variables.