vkd3d-shader/ir: Check that DEPTHOUT registers have dimension SCALAR.

Also fix the DXIL parser to emit them accordingly.
This commit is contained in:
Giovanni Mascellani
2025-07-18 20:03:42 +02:00
committed by Henri Verbeet
parent 3d23ef6bf8
commit 9f453fbb66
Notes: Henri Verbeet 2025-07-21 12:36:12 +02:00
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1629
2 changed files with 17 additions and 12 deletions

View File

@@ -9542,6 +9542,7 @@ static void vsir_validate_register(struct validation_context *ctx,
}
register_validation_data[] =
{
[VKD3DSPR_DEPTHOUT] = {true, 0, VSIR_DIMENSION_SCALAR},
[VKD3DSPR_LOCALTHREADINDEX] = {true, 0, VSIR_DIMENSION_VEC4},
[VKD3DSPR_COVERAGE] = {true, 0, VSIR_DIMENSION_VEC4},
};
@@ -9612,10 +9613,6 @@ static void vsir_validate_register(struct validation_context *ctx,
vsir_validate_io_register(ctx, reg);
break;
case VKD3DSPR_DEPTHOUT:
vsir_validate_register_without_indices(ctx, reg);
break;
case VKD3DSPR_MISCTYPE:
vsir_validate_misctype_register(ctx, reg);
break;