Module: vkd3d Branch: master Commit: da89da2bf3ce38f2d42d125f5a21743c0a439a6f URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/da89da2bf3ce38f2d42d125f5a2174...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Mon Sep 18 13:54:00 2023 +0200
vkd3d-shader: Hide support for DXIL sources.
Unfortunately this is not sufficiently ready to release.
---
include/private/vkd3d_shader_utils.h | 4 ++++ libs/vkd3d-shader/dxil.c | 2 ++ libs/vkd3d-shader/vkd3d_shader_main.c | 4 ++++ 3 files changed, 10 insertions(+)
diff --git a/include/private/vkd3d_shader_utils.h b/include/private/vkd3d_shader_utils.h index 00052a89..c9f8001e 100644 --- a/include/private/vkd3d_shader_utils.h +++ b/include/private/vkd3d_shader_utils.h @@ -43,12 +43,16 @@ static inline enum vkd3d_result vkd3d_shader_parse_dxbc_source_type(const struct if (tag == TAG_SHDR || tag == TAG_SHEX) { *type = VKD3D_SHADER_SOURCE_DXBC_TPF; +#ifndef VKD3D_SHADER_UNSUPPORTED_DXIL + break; +#else } else if (tag == TAG_DXIL) { *type = VKD3D_SHADER_SOURCE_DXBC_DXIL; /* Default to DXIL if both are present. */ break; +#endif } }
diff --git a/libs/vkd3d-shader/dxil.c b/libs/vkd3d-shader/dxil.c index 666d8b08..b78c78d3 100644 --- a/libs/vkd3d-shader/dxil.c +++ b/libs/vkd3d-shader/dxil.c @@ -2920,6 +2920,8 @@ int vkd3d_shader_sm6_parser_create(const struct vkd3d_shader_compile_info *compi struct sm6_parser *sm6; int ret;
+ ERR("Creating a DXIL parser. This is unsupported; you get to keep all the pieces if it breaks.\n"); + if (!(sm6 = vkd3d_calloc(1, sizeof(*sm6)))) { ERR("Failed to allocate parser.\n"); diff --git a/libs/vkd3d-shader/vkd3d_shader_main.c b/libs/vkd3d-shader/vkd3d_shader_main.c index 0c3422f6..9ccb917c 100644 --- a/libs/vkd3d-shader/vkd3d_shader_main.c +++ b/libs/vkd3d-shader/vkd3d_shader_main.c @@ -1647,7 +1647,9 @@ const enum vkd3d_shader_source_type *vkd3d_shader_get_supported_source_types(uns VKD3D_SHADER_SOURCE_DXBC_TPF, VKD3D_SHADER_SOURCE_HLSL, VKD3D_SHADER_SOURCE_D3D_BYTECODE, +#ifdef VKD3D_SHADER_UNSUPPORTED_DXIL VKD3D_SHADER_SOURCE_DXBC_DXIL, +#endif };
TRACE("count %p.\n", count); @@ -1686,7 +1688,9 @@ const enum vkd3d_shader_target_type *vkd3d_shader_get_supported_target_types(
switch (source_type) { +#ifdef VKD3D_SHADER_UNSUPPORTED_DXIL case VKD3D_SHADER_SOURCE_DXBC_DXIL: +#endif case VKD3D_SHADER_SOURCE_DXBC_TPF: *count = ARRAY_SIZE(dxbc_tpf_types); return dxbc_tpf_types;