vkd3d-shader/hlsl: Add special allocation rules for patch constant data.

This commit is contained in:
Shaun Ren
2025-03-25 18:44:44 -04:00
committed by Henri Verbeet
parent 7ba84b7787
commit 0c139ef7a0
Notes: Henri Verbeet 2025-04-09 16:47:09 +02:00
Approved-by: Elizabeth Figura (@zfigura)
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1444
2 changed files with 5 additions and 3 deletions

View File

@ -6407,7 +6407,9 @@ static void allocate_semantic_register(struct hlsl_ctx *ctx, struct hlsl_ir_var
|| semantic == VKD3D_SHADER_SV_PRIMITIVE_ID)
vip_allocation = true;
if (semantic == VKD3D_SHADER_SV_IS_FRONT_FACE || semantic == VKD3D_SHADER_SV_SAMPLE_INDEX)
if (semantic == VKD3D_SHADER_SV_IS_FRONT_FACE || semantic == VKD3D_SHADER_SV_SAMPLE_INDEX
|| (version.type == VKD3D_SHADER_TYPE_DOMAIN && !output && !is_primitive)
|| (ctx->is_patch_constant_func && output))
special_interpolation = true;
}