vkd3d-shader/ir: Keep source swizzles for registers with fixed masks in temp_allocator_set_src().

This commit is contained in:
Shaun Ren
2025-10-14 18:06:42 -04:00
committed by Henri Verbeet
parent b5e2e1dd06
commit 27f0475dbe
Notes: Henri Verbeet 2025-10-16 15:22:12 +02:00
Approved-by: Francisco Casas (@fcasas)
Approved-by: Elizabeth Figura (@zfigura)
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1766

View File

@@ -9340,6 +9340,9 @@ static void temp_allocator_set_src(struct temp_allocator *allocator, struct vkd3
src->reg.type = VKD3DSPR_TEMP;
src->reg.dimension = VSIR_DIMENSION_VEC4;
src->reg.idx[0].offset = reg->temp_id;
if (reg->fixed_mask)
return;
src->swizzle = vsir_combine_swizzles(vsir_swizzle_from_writemask(reg->allocated_mask), src->swizzle);
}