Goes atop !489. The last 8 commits belong to this MR. Many of these patches are small, but the series can be split further if necessary.
-- v2: vkd3d-shader/spirv: Handle ITOI and UTOU in spirv_compiler_map_alu_instruction(). vkd3d-shader/spirv: Support UINT64 source in spirv_compiler_emit_bool_cast(). vkd3d-shader/spirv: Support 64-bit sources in spirv_compiler_emit_int_div(). vkd3d-shader/spirv: Introduce a UINT64 component type. vkd3d-shader/spirv: Introduce a data_type_is_64_bit() helper function. vkd3d-shader/spirv: Use data_type_is_integer() in spirv_compiler_emit_neg(). vkd3d: Pass int64 capability info to vkd3d-shader. vkd3d-shader/spirv: Introduce a compiler feature flag for int64 capability. tests/shader-runner: Add 64-bit bitwise tests. tests/shader-runner: Add 64-bit arithmetic tests. tests/shader-runner: Introduce a 'shader int64' requirement directive. vkd3d-shader/spirv: Emit an error if 64-bit integers are used. vkd3d-shader/dxil: Introduce an instruction flag to suppress masking of bitwise shift counts.