Module: vkd3d
Branch: master
Commit: a4a1b4c5579f7bfeb9366d2772bcecf5d82042ee
URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/a4a1b4c5579f7bfeb9366d2772bce…
Author: Conor McCarthy <cmccarthy(a)codeweavers.com>
Date: Wed Nov 29 14:38:50 2023 +1000
vkd3d-shader/dxil: Set the result register data type for nop casts.
Casts from minimum precision types are emitted as nop, but the result
value type must be set to the cast result type.
---
libs/vkd3d-shader/dxil.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libs/vkd3d-shader/dxil.c b/libs/vkd3d-shader/dxil.c
index 0652df91..a1065c8b 100644
--- a/libs/vkd3d-shader/dxil.c
+++ b/libs/vkd3d-shader/dxil.c
@@ -3885,6 +3885,9 @@ static void sm6_parser_emit_cast(struct sm6_parser *sm6, const struct dxil_recor
if (handler_idx == VKD3DSIH_NOP)
{
dst->u.reg = value->u.reg;
+ /* Set the result type for casts from 16-bit min precision. */
+ if (type->u.width != 16)
+ dst->u.reg.data_type = vkd3d_data_type_from_sm6_type(type);
return;
}
Module: vkd3d
Branch: master
Commit: 1630fd9a3c10a31850bf877d73f88169e617cef8
URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/1630fd9a3c10a31850bf877d73f88…
Author: Conor McCarthy <cmccarthy(a)codeweavers.com>
Date: Mon Nov 27 16:55:29 2023 +1000
vkd3d-shader/dxil: Apply metadata attachments to instructions.
These are apparently only used for 'dx.op' intrinsics, because the
instructions based on native LLVM ones have their own way to apply
attributes.
---
libs/vkd3d-shader/dxil.c | 217 +++++++++++++++++++++++++++++++
libs/vkd3d-shader/vkd3d_shader_private.h | 1 +
2 files changed, 218 insertions(+)