Goes atop MR 346, 400, 372, and 388. The last six commits belong to this MR.
-- v4: vkd3d-shader/dxil: Implement the DXIL EXTRACTVAL instruction. vkd3d-shader/dxil: Implement DX instruction CBufferLoadLegacy. vkd3d-shader/dxil: Implement DX instruction CreateHandle. vkd3d-shader/dxil: Read CBV descriptors. vkd3d-shader/spirv: Align constant buffer sizes to 16 bytes. vkd3d-shader/spirv: Support scalar swizzle of vector SSA registers. vkd3d-shader/dxil: Read DXIL compute shader thread group dimensions. vkd3d-shader/dxil: Read DXIL global flags. vkd3d-shader: Define more global flags. vkd3d-shader/dxil: Handle multi-row signature elements. vkd3d-shader/dxil: Handle signature element additional tag/value pairs. vkd3d-shader/dxil: Read the DXIL input and output signatures. vkd3d-shader/dxil: Validate the entry point info. vkd3d-shader/dxil: Read DXIL metadata named nodes. vkd3d-shader/dxil: Read DXIL metadata kinds. vkd3d-shader/dxil: Read DXIL metadata values. vkd3d-shader/dxil: Read DXIL metadata nodes. vkd3d-shader/dxil: Read DXIL metadata strings.