vkd3d-shader/ir: Introduce VKD3DSIH_IMUL_LOW.

It is meant to compute the lower word of an integer multiplication.
This commit is contained in:
Giovanni Mascellani
2025-06-10 16:57:57 +02:00
committed by Henri Verbeet
parent f3dec58423
commit 4a39db797b
Notes: Henri Verbeet 2025-06-24 16:31:58 +02:00
Approved-by: Elizabeth Figura (@zfigura)
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1583
5 changed files with 11 additions and 3 deletions

View File

@@ -7534,6 +7534,7 @@ static SpvOp spirv_compiler_map_alu_instruction(const struct vkd3d_shader_instru
{VKD3DSIH_FREM, SpvOpFRem},
{VKD3DSIH_FTOD, SpvOpFConvert},
{VKD3DSIH_IADD, SpvOpIAdd},
{VKD3DSIH_IMUL_LOW, SpvOpIMul},
{VKD3DSIH_INEG, SpvOpSNegate},
{VKD3DSIH_ISHL, SpvOpShiftLeftLogical},
{VKD3DSIH_ISHR, SpvOpShiftRightArithmetic},
@@ -10671,6 +10672,7 @@ static int spirv_compiler_handle_instruction(struct spirv_compiler *compiler,
case VKD3DSIH_FREM:
case VKD3DSIH_FTOD:
case VKD3DSIH_IADD:
case VKD3DSIH_IMUL_LOW:
case VKD3DSIH_INEG:
case VKD3DSIH_ISHL:
case VKD3DSIH_ISHR: