From b8cb1a05cdf8a5dc7377d8a0c8d0ef5a655126cc Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Thu, 14 Apr 2016 10:48:19 +1000 Subject: [PATCH] glsl: add new uniform fields to be used to restore state from cache Signed-off-by: Timothy Arceri Reviewed-by: Eric Anholt --- src/compiler/glsl/link_uniforms.cpp | 4 ++++ src/mesa/main/mtypes.h | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/src/compiler/glsl/link_uniforms.cpp b/src/compiler/glsl/link_uniforms.cpp index a450aa03a8c..8930d26a5ca 100644 --- a/src/compiler/glsl/link_uniforms.cpp +++ b/src/compiler/glsl/link_uniforms.cpp @@ -1265,6 +1265,10 @@ link_assign_uniform_storage(struct gl_context *ctx, link_setup_uniform_remap_tables(ctx, prog); + /* Set shader cache fields */ + prog->data->NumUniformDataSlots = num_data_slots; + prog->data->UniformDataSlots = data; + link_set_uniform_initializers(prog, boolean_true); } diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index b0a97b30881..4ac75312d6c 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -2662,6 +2662,10 @@ struct gl_shader_program_data struct gl_active_atomic_buffer *AtomicBuffers; unsigned NumAtomicBuffers; + /* Shader cache variables used during restore */ + unsigned NumUniformDataSlots; + union gl_constant_value *UniformDataSlots; + /** List of all active resources after linking. */ struct gl_program_resource *ProgramResourceList; unsigned NumProgramResourceList; -- 2.30.2