vkd3d-shader: Treat the HLSL case specially in vkd3d_shader_compile().

This commit is contained in:
Giovanni Mascellani
2024-03-01 11:47:57 +01:00
committed by Alexandre Julliard
parent 3a1c32acd4
commit bbd37a76fc
Notes: Alexandre Julliard 2024-03-08 23:47:38 +01:00
Approved-by: Giovanni Mascellani (@giomasce)
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/679

View File

@@ -1729,16 +1729,18 @@ int vkd3d_shader_compile(const struct vkd3d_shader_compile_info *compile_info,
vkd3d_shader_dump_shader(compile_info); vkd3d_shader_dump_shader(compile_info);
if (compile_info->source_type == VKD3D_SHADER_SOURCE_HLSL)
{
ret = compile_hlsl(compile_info, out, &message_context);
}
else
{
switch (compile_info->source_type) switch (compile_info->source_type)
{ {
case VKD3D_SHADER_SOURCE_DXBC_TPF: case VKD3D_SHADER_SOURCE_DXBC_TPF:
ret = compile_dxbc_tpf(compile_info, out, &message_context); ret = compile_dxbc_tpf(compile_info, out, &message_context);
break; break;
case VKD3D_SHADER_SOURCE_HLSL:
ret = compile_hlsl(compile_info, out, &message_context);
break;
case VKD3D_SHADER_SOURCE_D3D_BYTECODE: case VKD3D_SHADER_SOURCE_D3D_BYTECODE:
ret = compile_d3d_bytecode(compile_info, out, &message_context); ret = compile_d3d_bytecode(compile_info, out, &message_context);
break; break;
@@ -1748,7 +1750,10 @@ int vkd3d_shader_compile(const struct vkd3d_shader_compile_info *compile_info,
break; break;
default: default:
vkd3d_unreachable(); ERR("Unsupported source type %#x.\n", compile_info->source_type);
ret = VKD3D_ERROR_INVALID_ARGUMENT;
break;
}
} }
vkd3d_shader_message_context_trace_messages(&message_context); vkd3d_shader_message_context_trace_messages(&message_context);