summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrancisco Jerez <[email protected]>2016-07-19 20:29:55 -0700
committerFrancisco Jerez <[email protected]>2016-08-24 13:28:31 -0700
commit711213fb7226f25a7da4962aa7526d7265d38356 (patch)
tree38f5eb62a2dd7277291865b84774740a0503c768
parent913ae618c6bdb42366f4d87265a6e35a88656e70 (diff)
glsl: Don't consider read-only fragment outputs to be written to.
Since they cannot be written. This prevents adding fragment outputs to the OutputsWritten set that are only read from via the gl_LastFragData array but never written to. Reviewed-by: Kenneth Graunke <[email protected]>
-rw-r--r--src/compiler/glsl/ir_set_program_inouts.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/compiler/glsl/ir_set_program_inouts.cpp b/src/compiler/glsl/ir_set_program_inouts.cpp
index 060bea8dd8e..a6475b519e4 100644
--- a/src/compiler/glsl/ir_set_program_inouts.cpp
+++ b/src/compiler/glsl/ir_set_program_inouts.cpp
@@ -137,7 +137,7 @@ mark(struct gl_program *prog, ir_variable *var, int offset, int len,
assert(var->data.mode == ir_var_shader_out);
if (is_patch_generic)
prog->PatchOutputsWritten |= bitfield;
- else
+ else if (!var->data.read_only)
prog->OutputsWritten |= bitfield;
}
}