vkd3d-shader/dxil: Emit gather offsets as signed.

This is important for the MSL generator, otherwise invalid MSL
is emitted.
This commit is contained in:
Giovanni Mascellani
2025-07-27 14:38:03 +02:00
committed by Henri Verbeet
parent 3cf35ce22e
commit f7866df201
Notes: Henri Verbeet 2025-07-28 16:39:33 +02:00
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1655

View File

@@ -6291,6 +6291,10 @@ static void sm6_parser_emit_dx_texture_gather(struct sm6_parser *sm6, enum dx_in
return;
}
/* DXIL doesn't know about signedness, but vsir expects the offset to be signed. */
if (extended_offset)
offset.data_type = VSIR_DATA_I32;
ins = state->ins;
if (op == DX_TEXTURE_GATHER)
{