[Mesa-dev] [PATCH 3/8] st/mesa: add sha1 field to st program structs

Timothy Arceri tarceri at itsqueeze.com
Wed Feb 22 03:45:41 UTC 2017


This will be used to share the sha1 computed by the tgsi load
function with the tgsi write function.
---
 src/mesa/state_tracker/st_program.h | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/src/mesa/state_tracker/st_program.h b/src/mesa/state_tracker/st_program.h
index 9f9777a..70664d1 100644
--- a/src/mesa/state_tracker/st_program.h
+++ b/src/mesa/state_tracker/st_program.h
@@ -150,6 +150,9 @@ struct st_fragment_program
    struct gl_shader_program *shader_program;
 
    struct st_fp_variant *variants;
+
+   /** SHA1 hash of linked tgsi shader program, used for on-disk cache */
+   unsigned char sha1[20];
 };
 
 
@@ -220,6 +223,9 @@ struct st_vertex_program
    /** List of translated variants of this vertex program.
     */
    struct st_vp_variant *variants;
+
+   /** SHA1 hash of linked tgsi shader program, used for on-disk cache */
+   unsigned char sha1[20];
 };
 
 
@@ -256,6 +262,9 @@ struct st_geometry_program
    uint64_t affected_states; /**< ST_NEW_* flags to mark dirty when binding */
 
    struct st_basic_variant *variants;
+
+   /** SHA1 hash of linked tgsi shader program, used for on-disk cache */
+   unsigned char sha1[20];
 };
 
 
@@ -270,6 +279,9 @@ struct st_tessctrl_program
    uint64_t affected_states; /**< ST_NEW_* flags to mark dirty when binding */
 
    struct st_basic_variant *variants;
+
+   /** SHA1 hash of linked tgsi shader program, used for on-disk cache */
+   unsigned char sha1[20];
 };
 
 
@@ -284,6 +296,9 @@ struct st_tesseval_program
    uint64_t affected_states; /**< ST_NEW_* flags to mark dirty when binding */
 
    struct st_basic_variant *variants;
+
+   /** SHA1 hash of linked tgsi shader program, used for on-disk cache */
+   unsigned char sha1[20];
 };
 
 
@@ -298,6 +313,9 @@ struct st_compute_program
    uint64_t affected_states; /**< ST_NEW_* flags to mark dirty when binding */
 
    struct st_basic_variant *variants;
+
+   /** SHA1 hash of linked tgsi shader program, used for on-disk cache */
+   unsigned char sha1[20];
 };
 
 
-- 
2.9.3



More information about the mesa-dev mailing list