mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-04-13 05:43:18 -07:00
vkd3d-shader/hlsl: Allow non-constant indices in register_deref_usage().
This commit is contained in:
Notes:
Henri Verbeet
2025-03-12 22:20:19 +01: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/1388
@ -4807,8 +4807,7 @@ static void register_deref_usage(struct hlsl_ctx *ctx, struct hlsl_deref *deref)
|
||||
struct hlsl_type *type;
|
||||
unsigned int index;
|
||||
|
||||
if (!hlsl_regset_index_from_deref(ctx, deref, regset, &index))
|
||||
return;
|
||||
hlsl_regset_index_from_deref(ctx, deref, regset, &index);
|
||||
|
||||
if (regset <= HLSL_REGSET_LAST_OBJECT)
|
||||
{
|
||||
@ -4819,7 +4818,6 @@ static void register_deref_usage(struct hlsl_ctx *ctx, struct hlsl_deref *deref)
|
||||
{
|
||||
type = hlsl_deref_get_type(ctx, deref);
|
||||
|
||||
hlsl_regset_index_from_deref(ctx, deref, regset, &index);
|
||||
required_bind_count = align(index + type->reg_size[regset], 4) / 4;
|
||||
var->bind_count[regset] = max(var->bind_count[regset], required_bind_count);
|
||||
}
|
||||
|
Reference in New Issue
Block a user