Goes atop !436 and !441. The last seven commits belong to this MR.
-- v2: vkd3d-shader/spirv: Avoid redundant bool-to-bool conversions in spirv_compiler_emit_movc(). vkd3d-shader/dxil: Implement the DXIL VSELECT instruction. tests/shader-runner: Introduce an sm6 condition for test directives. tests/shader-runner: Add tests for 64-bit casts. vkd3d-shader/spirv: Return an error if an invalid handler is encountered. tests/shader-runner: Add a test for float comparisons. vkd3d-shader/spirv: Introduce orderedness to comparison instructions. vkd3d-shader/dxil: Implement the DXIL CMP2 instruction. vkd3d-shader/spirv: Support bool dst register in spirv_compiler_emit_comparison_instruction().