aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2019-09-30 16:54:00 -0400
committerMarek Olšák <[email protected]>2019-10-16 20:10:47 -0400
commit691240cdbee712e56679368de8e6635c3df1208a (patch)
tree609ddee40ee816bb715bb180d2760948c4adbcb6 /src/mesa
parent33de483d55757024baafca9a69c2159a0a61481f (diff)
st/mesa: don't store stream output info to shader cache for tess ctrl shaders
Reviewed-by: Timothy Arceri <[email protected]>
Diffstat (limited to 'src/mesa')
-rw-r--r--src/mesa/state_tracker/st_shader_cache.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/mesa/state_tracker/st_shader_cache.c b/src/mesa/state_tracker/st_shader_cache.c
index 344bd93d667..7bb36b609c9 100644
--- a/src/mesa/state_tracker/st_shader_cache.c
+++ b/src/mesa/state_tracker/st_shader_cache.c
@@ -107,7 +107,9 @@ st_serialise_ir_program(struct gl_context *ctx, struct gl_program *prog,
case MESA_SHADER_GEOMETRY: {
struct st_common_program *stcp = (struct st_common_program *) prog;
- write_stream_out_to_cache(&blob, &stcp->tgsi);
+ if (prog->info.stage == MESA_SHADER_TESS_EVAL ||
+ prog->info.stage == MESA_SHADER_GEOMETRY)
+ write_stream_out_to_cache(&blob, &stcp->tgsi);
if (nir)
write_nir_to_cache(&blob, prog);
@@ -238,7 +240,6 @@ st_deserialise_ir_program(struct gl_context *ctx,
struct st_common_program *sttcp = st_common_program(prog);
st_release_basic_variants(st, sttcp);
- read_stream_out_from_cache(&blob_reader, &sttcp->tgsi);
if (nir) {
sttcp->tgsi.type = PIPE_SHADER_IR_NIR;