vkd3d-shader/ir: Map 16-bit vsir types to 16-bit component types in vkd3d_component_type_from_data_type().

Mapping these to 32-bit types if needed is supposed to happen in the
frontends now.
This commit is contained in:
Henri Verbeet
2025-09-02 15:54:21 +02:00
parent 38078f2c51
commit 6607b94ad7
Notes: Henri Verbeet 2025-09-08 12:41:38 +02:00
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1715

View File

@@ -1863,7 +1863,8 @@ static inline enum vkd3d_shader_component_type vkd3d_component_type_from_data_ty
{ {
case VSIR_DATA_BOOL: case VSIR_DATA_BOOL:
return VKD3D_SHADER_COMPONENT_BOOL; return VKD3D_SHADER_COMPONENT_BOOL;
case VSIR_DATA_F16: /* Minimum precision. TODO: native 16-bit */ case VSIR_DATA_F16:
return VKD3D_SHADER_COMPONENT_FLOAT16;
case VSIR_DATA_F32: case VSIR_DATA_F32:
case VSIR_DATA_SNORM: case VSIR_DATA_SNORM:
case VSIR_DATA_UNORM: case VSIR_DATA_UNORM:
@@ -1872,7 +1873,8 @@ static inline enum vkd3d_shader_component_type vkd3d_component_type_from_data_ty
return VKD3D_SHADER_COMPONENT_DOUBLE; return VKD3D_SHADER_COMPONENT_DOUBLE;
case VSIR_DATA_I32: case VSIR_DATA_I32:
return VKD3D_SHADER_COMPONENT_INT; return VKD3D_SHADER_COMPONENT_INT;
case VSIR_DATA_U16: /* Minimum precision. TODO: native 16-bit */ case VSIR_DATA_U16:
return VKD3D_SHADER_COMPONENT_UINT16;
case VSIR_DATA_U32: case VSIR_DATA_U32:
return VKD3D_SHADER_COMPONENT_UINT; return VKD3D_SHADER_COMPONENT_UINT;
case VSIR_DATA_U64: case VSIR_DATA_U64: