[Mesa-dev] [PATCH 36/37] glsl: reserve parameter storage on cache restore

Timothy Arceri t_arceri at yahoo.com.au
Mon Jan 23 23:28:05 UTC 2017


From: Timothy Arceri <timothy.arceri at collabora.com>

Since we know how big the list will be we can allocate the storage
upfront.
---
 src/compiler/glsl/shader_cache.cpp | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/compiler/glsl/shader_cache.cpp b/src/compiler/glsl/shader_cache.cpp
index 91b79a5..0e7deb1 100644
--- a/src/compiler/glsl/shader_cache.cpp
+++ b/src/compiler/glsl/shader_cache.cpp
@@ -1089,6 +1089,7 @@ read_shader_parameters(struct blob_reader *metadata,
 
    uint32_t num_parameters = blob_read_uint32(metadata);
 
+   _mesa_reserve_parameter_storage(params, num_parameters);
    for (uint32_t i = 0; i < num_parameters; i++) {
 
       type = (gl_register_file) blob_read_uint32(metadata);
-- 
2.9.3



More information about the mesa-dev mailing list