anv: pack bind_map further

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39405>
This commit is contained in:
Lionel Landwerlin 2026-01-17 20:46:06 +02:00 committed by Marge Bot
parent 1cd9a4e4a1
commit 5a0bb5b856
2 changed files with 9 additions and 9 deletions

View file

@ -1163,9 +1163,9 @@ struct anv_pipeline_bind_map {
/* enum anv_pipeline_bind_mask */
uint16_t binding_mask;
uint32_t surface_count;
uint32_t sampler_count;
uint32_t embedded_sampler_count;
uint8_t surface_count;
uint8_t sampler_count;
uint16_t embedded_sampler_count;
struct anv_pipeline_binding * surface_to_descriptor;
struct anv_pipeline_binding * sampler_to_descriptor;

View file

@ -71,9 +71,9 @@ anv_shader_deserialize(struct vk_device *vk_device,
blob_copy_bytes(blob, data.bind_map.push_sha1, sizeof(data.bind_map.push_sha1));
data.bind_map.layout_type = blob_read_uint16(blob);
data.bind_map.binding_mask = blob_read_uint16(blob);
data.bind_map.surface_count = blob_read_uint32(blob);
data.bind_map.sampler_count = blob_read_uint32(blob);
data.bind_map.embedded_sampler_count = blob_read_uint32(blob);
data.bind_map.surface_count = blob_read_uint8(blob);
data.bind_map.sampler_count = blob_read_uint8(blob);
data.bind_map.embedded_sampler_count = blob_read_uint16(blob);
data.bind_map.surface_to_descriptor = (void *)
blob_read_bytes(blob, data.bind_map.surface_count *
sizeof(*data.bind_map.surface_to_descriptor));
@ -151,9 +151,9 @@ anv_shader_serialize(struct vk_device *device,
sizeof(shader->bind_map.push_sha1));
blob_write_uint16(blob, shader->bind_map.layout_type);
blob_write_uint16(blob, shader->bind_map.binding_mask);
blob_write_uint32(blob, shader->bind_map.surface_count);
blob_write_uint32(blob, shader->bind_map.sampler_count);
blob_write_uint32(blob, shader->bind_map.embedded_sampler_count);
blob_write_uint8(blob, shader->bind_map.surface_count);
blob_write_uint8(blob, shader->bind_map.sampler_count);
blob_write_uint16(blob, shader->bind_map.embedded_sampler_count);
blob_write_bytes(blob, shader->bind_map.surface_to_descriptor,
shader->bind_map.surface_count *
sizeof(*shader->bind_map.surface_to_descriptor));