mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
vkd3d-shader/fx: Set EXPLICIT_BIND_POINT flag for packoffset() reservations as well.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
This commit is contained in:
parent
da1d96f708
commit
402dc94259
Notes:
Henri Verbeet
2024-06-12 19:13:16 +02:00
Approved-by: Elizabeth Figura (@zfigura) Approved-by: Henri Verbeet (@hverbeet) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/904
@ -989,8 +989,7 @@ static void write_fx_4_numeric_variable(struct hlsl_ir_var *var, bool shared, st
|
|||||||
};
|
};
|
||||||
struct hlsl_ctx *ctx = fx->ctx;
|
struct hlsl_ctx *ctx = fx->ctx;
|
||||||
|
|
||||||
/* Explicit bind point. */
|
if (var->has_explicit_bind_point)
|
||||||
if (var->reg_reservation.reg_type)
|
|
||||||
flags |= HAS_EXPLICIT_BIND_POINT;
|
flags |= HAS_EXPLICIT_BIND_POINT;
|
||||||
|
|
||||||
type_offset = write_type(var->data_type, fx);
|
type_offset = write_type(var->data_type, fx);
|
||||||
|
@ -492,6 +492,7 @@ struct hlsl_ir_var
|
|||||||
uint32_t is_param : 1;
|
uint32_t is_param : 1;
|
||||||
uint32_t is_separated_resource : 1;
|
uint32_t is_separated_resource : 1;
|
||||||
uint32_t is_synthetic : 1;
|
uint32_t is_synthetic : 1;
|
||||||
|
uint32_t has_explicit_bind_point : 1;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* This struct is used to represent assignments in state block entries:
|
/* This struct is used to represent assignments in state block entries:
|
||||||
|
@ -4791,6 +4791,7 @@ static void hlsl_calculate_buffer_offset(struct hlsl_ctx *ctx, struct hlsl_ir_va
|
|||||||
if (register_reservation)
|
if (register_reservation)
|
||||||
{
|
{
|
||||||
var->buffer_offset = 4 * var->reg_reservation.reg_index;
|
var->buffer_offset = 4 * var->reg_reservation.reg_index;
|
||||||
|
var->has_explicit_bind_point = 1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -4823,6 +4824,7 @@ static void hlsl_calculate_buffer_offset(struct hlsl_ctx *ctx, struct hlsl_ir_va
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
var->buffer_offset = var->reg_reservation.offset_index;
|
var->buffer_offset = var->reg_reservation.offset_index;
|
||||||
|
var->has_explicit_bind_point = 1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user