Conor McCarthy : vkd3d-shader/dxbc: Emit a fixme when a DXIL shader chunk is found.
Alexandre Julliard
julliard at winehq.org
Mon Jan 10 15:57:17 CST 2022
Module: vkd3d
Branch: master
Commit: eb1ae29de0a5a7c319c2123396c31871a27cc0fe
URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=eb1ae29de0a5a7c319c2123396c31871a27cc0fe
Author: Conor McCarthy <cmccarthy at codeweavers.com>
Date: Mon Jan 10 15:14:37 2022 +1000
vkd3d-shader/dxbc: Emit a fixme when a DXIL shader chunk is found.
Simplifies detection of SM6+ shaders, e.g. Horizon Zero Dawn and
Cyberpunk 2077.
Signed-off-by: Conor McCarthy <cmccarthy at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
libs/vkd3d-shader/dxbc.c | 4 ++++
libs/vkd3d-shader/vkd3d_shader_private.h | 1 +
2 files changed, 5 insertions(+)
diff --git a/libs/vkd3d-shader/dxbc.c b/libs/vkd3d-shader/dxbc.c
index 0b76a4a..d26ed54 100644
--- a/libs/vkd3d-shader/dxbc.c
+++ b/libs/vkd3d-shader/dxbc.c
@@ -1988,6 +1988,10 @@ static int shdr_handler(const char *data, DWORD data_size, DWORD tag, void *cont
TRACE("Skipping AON9 shader code chunk.\n");
break;
+ case TAG_DXIL:
+ FIXME("Skipping DXIL shader model 6+ code chunk.\n");
+ break;
+
default:
TRACE("Skipping chunk %#x.\n", tag);
break;
diff --git a/libs/vkd3d-shader/vkd3d_shader_private.h b/libs/vkd3d-shader/vkd3d_shader_private.h
index ffea91d..6f0c57c 100644
--- a/libs/vkd3d-shader/vkd3d_shader_private.h
+++ b/libs/vkd3d-shader/vkd3d_shader_private.h
@@ -1216,6 +1216,7 @@ static inline void *vkd3d_find_struct_(const struct vkd3d_struct *chain,
((DWORD)(ch2) << 16) | ((DWORD)(ch3) << 24 ))
#define TAG_AON9 MAKE_TAG('A', 'o', 'n', '9')
#define TAG_DXBC MAKE_TAG('D', 'X', 'B', 'C')
+#define TAG_DXIL MAKE_TAG('D', 'X', 'I', 'L')
#define TAG_ISG1 MAKE_TAG('I', 'S', 'G', '1')
#define TAG_ISGN MAKE_TAG('I', 'S', 'G', 'N')
#define TAG_OSG1 MAKE_TAG('O', 'S', 'G', '1')
More information about the wine-cvs
mailing list