diff options
author | Grazvydas Ignotas <[email protected]> | 2017-03-16 01:09:27 +0200 |
---|---|---|
committer | Timothy Arceri <[email protected]> | 2017-03-21 11:15:52 +1100 |
commit | 529a767041c880f90c4465cb34a89430459c7fce (patch) | |
tree | b19c1fcbc36ffe1314155559c7fa52226c8c6e2d /src/gallium | |
parent | 021c87fa24afe849e51dd0249ec8e7b59e097062 (diff) |
util/disk_cache: use a helper to compute cache keys
This will allow to hash additional data into the cache keys or even
change the hashing algorithm easily, should we decide to do so.
v2: don't try to compute key (and crash) if cache is disabled
Signed-off-by: Grazvydas Ignotas <[email protected]>
Reviewed-by: Timothy Arceri <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_state_shaders.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c index 3596f5af72a..30856b08ac5 100644 --- a/src/gallium/drivers/radeonsi/si_state_shaders.c +++ b/src/gallium/drivers/radeonsi/si_state_shaders.c @@ -207,7 +207,8 @@ static bool si_shader_cache_insert_shader(struct si_screen *sscreen, } if (sscreen->b.disk_shader_cache && insert_into_disk_cache) { - _mesa_sha1_compute(tgsi_binary, *((uint32_t *)tgsi_binary), key); + disk_cache_compute_key(sscreen->b.disk_shader_cache, tgsi_binary, + *((uint32_t *)tgsi_binary), key); disk_cache_put(sscreen->b.disk_shader_cache, key, hw_binary, *((uint32_t *) hw_binary)); } @@ -226,7 +227,8 @@ static bool si_shader_cache_load_shader(struct si_screen *sscreen, unsigned char sha1[CACHE_KEY_SIZE]; size_t tg_size = *((uint32_t *) tgsi_binary); - _mesa_sha1_compute(tgsi_binary, tg_size, sha1); + disk_cache_compute_key(sscreen->b.disk_shader_cache, + tgsi_binary, tg_size, sha1); size_t binary_size; uint8_t *buffer = |