Mesa (master): radv: Hash the immutable samplers.

Bas Nieuwenhuizen bnieuwenhuizen at kemper.freedesktop.org
Wed Apr 12 05:45:03 UTC 2017


Module: Mesa
Branch: master
Commit: c4d43388c0f7d3f8e15d79a1cdc8227add18faf9
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c4d43388c0f7d3f8e15d79a1cdc8227add18faf9

Author: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Date:   Wed Apr 12 00:40:36 2017 +0200

radv: Hash the immutable samplers.

Since the shader code can include them.

Signed-off-by: Bas Nieuwenhuizen <basni at google.com>
Reviewed-by: Dave Airlie <airlied at redhat.com>

---

 src/amd/vulkan/radv_descriptor_set.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/amd/vulkan/radv_descriptor_set.c b/src/amd/vulkan/radv_descriptor_set.c
index ba5d5eb75e..c048a4c7f5 100644
--- a/src/amd/vulkan/radv_descriptor_set.c
+++ b/src/amd/vulkan/radv_descriptor_set.c
@@ -214,6 +214,9 @@ VkResult radv_CreatePipelineLayout(
 		layout->set[set].dynamic_offset_start = dynamic_offset_count;
 		for (uint32_t b = 0; b < set_layout->binding_count; b++) {
 			dynamic_offset_count += set_layout->binding[b].array_size * set_layout->binding[b].dynamic_offset_count;
+			if (set_layout->binding[b].immutable_samplers_offset)
+				_mesa_sha1_update(&ctx, radv_immutable_samplers(set_layout, set_layout->binding + b),
+				                  set_layout->binding[b].array_size * 4 * sizeof(uint32_t));
 		}
 		_mesa_sha1_update(&ctx, set_layout->binding,
 				  sizeof(set_layout->binding[0]) * set_layout->binding_count);




More information about the mesa-commit mailing list