vkd3d-shader/hlsl: Track objects sampling dimension.

This commit is contained in:
Francisco Casas
2022-11-25 20:38:33 -03:00
committed by Alexandre Julliard
parent 4dba38e6c8
commit 3e9a9c5051
Notes: Alexandre Julliard 2023-05-08 22:34:16 +02:00
Approved-by: Giovanni Mascellani (@giomasce)
Approved-by: Zebediah Figura (@zfigura)
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/159
6 changed files with 39 additions and 1 deletions

View File

@@ -409,6 +409,8 @@ struct hlsl_ir_var
struct
{
bool used;
enum hlsl_sampler_dim sampler_dim;
struct vkd3d_shader_location first_sampler_dim_loc;
} *objects_usage[HLSL_REGSET_LAST_OBJECT + 1];
uint32_t is_input_semantic : 1;
@@ -622,6 +624,7 @@ struct hlsl_ir_resource_load
enum hlsl_resource_load_type load_type;
struct hlsl_deref resource, sampler;
struct hlsl_src coords, lod, texel_offset;
enum hlsl_sampler_dim sampling_dim;
};
struct hlsl_ir_resource_store
@@ -823,6 +826,7 @@ struct hlsl_resource_load_params
enum hlsl_resource_load_type type;
struct hlsl_ir_node *resource, *sampler;
struct hlsl_ir_node *coords, *lod, *texel_offset;
enum hlsl_sampler_dim sampling_dim;
};
static inline struct hlsl_ir_call *hlsl_ir_call(const struct hlsl_ir_node *node)