vkd3d/libs/vkd3d-shader
Francisco Casas 7eba063136 vkd3d-shader/hlsl: Rename hlsl_reg.bind_count to hlsl_reg.allocation_size.
We have to distinguish between the "bind count" and the "allocation size"
of variables.

The "allocation size" affects the starting register id for the resource to
be allocated next, while the "bind count" is determined by the last field
actually used. The former may be larger than the latter.

What we are currently calling hlsl_reg.bind_count is actually the
"allocation size", so a rename is in order.

The real "bind count", which will be introduced in following patches,
is important because it is what should be shown in the RDEF table and
some resource allocation rules depend on it.

For instance, for this shader:

    texture2D texs[3];
    texture2D tex;

    float4 main() : sv_target
    {
        return texs[0].Load(int3(0, 0, 0)) + tex.Load(int3(0, 0, 0));
    }

the variable "texs" has a "bind count" of 1, but an "allocation size" of
3:

    // Resource Bindings:
    //
    // Name                                 Type  Format         Dim      HLSL Bind  Count
    // ------------------------------ ---------- ------- ----------- -------------- ------
    // texs                              texture  float4          2d             t0      1
    // tex                               texture  float4          2d             t3      1
2023-08-15 21:51:27 +02:00
..
checksum.c vkd3d-shader: Introduce vkd3d_make_u{16, 32}() helpers. 2021-08-11 20:58:24 +02:00
d3d_asm.c vkd3d-shader: Unify static string arrays initialization pattern. 2023-06-28 21:40:21 +02:00
d3dbc.c vkd3d-shader/hlsl: Rename hlsl_reg.bind_count to hlsl_reg.allocation_size. 2023-08-15 21:51:27 +02:00
dxbc.c vkd3d-shader: Add a separate field for the target location of a signature element. 2023-08-03 21:20:39 +09:00
dxil.c vkd3d-shader/dxil: Emit undefined constants. 2023-07-20 22:32:53 +02:00
glsl.c vkd3d-shader/glsl: Update the current source location in vkd3d_glsl_generator_generate(). 2023-03-13 22:09:58 +01:00
hlsl_codegen.c vkd3d-shader/hlsl: Rename hlsl_reg.bind_count to hlsl_reg.allocation_size. 2023-08-15 21:51:27 +02:00
hlsl_constant_ops.c vkd3d-shader/hlsl: Use type width in fold_rcp(). 2023-08-14 18:38:21 +02:00
hlsl.c vkd3d-shader/hlsl: Use hlsl_block_add_instr() in clone_block(). 2023-08-08 21:15:16 +09:00
hlsl.h vkd3d-shader/hlsl: Rename hlsl_reg.bind_count to hlsl_reg.allocation_size. 2023-08-15 21:51:27 +02:00
hlsl.l vkd3d-shader/hlsl: Add support for writing RWStructuredBuffer declarations. 2023-05-22 22:03:26 +02:00
hlsl.y vkd3d-shader/hlsl: Store the "instrs" field of struct hlsl_attribute as a hlsl_block. 2023-08-08 21:15:08 +09:00
ir.c vkd3d-shader/spirv: Make output varyings not consumed by the next stage private variables. 2023-08-03 21:20:42 +09:00
libvkd3d-shader.pc.in build: Build libvkd3d-shader as public library. 2018-11-02 11:19:00 +01:00
preproc.h build: Make the default symbol visibility "hidden". 2021-08-09 21:43:22 +02:00
preproc.l vkd3d-shader/preproc: Append spaces between tokens in macro invocations. 2023-08-02 20:19:21 +09:00
preproc.y vkd3d-shader/hlsl: Handle over/underflow when parsing integer literals. 2022-05-12 19:33:56 +02:00
spirv.c vkd3d-shader: Introduce struct vkd3d_shader_scan_descriptor_info1. 2023-08-14 18:38:11 +02:00
tpf.c vkd3d-shader/hlsl: Rename hlsl_reg.bind_count to hlsl_reg.allocation_size. 2023-08-15 21:51:27 +02:00
vkd3d_shader_main.c vkd3d-shader: Get rid of the uav_ranges array. 2023-08-14 18:38:11 +02:00
vkd3d_shader_private.h vkd3d-shader/hlsl: Add constant folding for 'log2'. 2023-08-14 18:38:20 +02:00
vkd3d_shader.map vkd3d-shader: Introduce an API to retrieve all signatures from DXBC shaders. 2023-06-27 22:33:41 +02:00