vkd3d-shader/dxil: Validate that floating-point extension casts increase bit width.

This commit is contained in:
Giovanni Mascellani
2025-05-12 15:21:25 +02:00
committed by Henri Verbeet
parent a91fb0523a
commit b9ce828451
Notes: Henri Verbeet 2025-06-04 13:14:04 +02:00
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1532

View File

@@ -6886,7 +6886,7 @@ static enum vkd3d_shader_opcode sm6_map_cast_op(uint64_t code, const struct sm6_
case CAST_FPEXT:
/* TODO: native 16-bit */
op = (to->u.width == 64) ? VKD3DSIH_FTOD : VKD3DSIH_NOP;
is_valid = from_fp && to_fp;
is_valid = from_fp && to_fp && to->u.width >= from->u.width;
break;
case CAST_BITCAST:
op = VKD3DSIH_MOV;