summaryrefslogtreecommitdiffstats
path: root/src/compiler
diff options
context:
space:
mode:
authorTimothy Arceri <[email protected]>2016-10-20 15:27:35 +1100
committerTimothy Arceri <[email protected]>2016-10-26 14:29:36 +1100
commit5346630593bec80efa732c40b63e0e95a00af074 (patch)
treec321e7220a3a7b08b2b70f86f84bcccbb5cbaba2 /src/compiler
parentb4b450a5cbd22690b221d0252e6d11f4c0e02ab8 (diff)
r200/glsl/st/mesa: use common outputs written field
And set outputs written directly in shader_info. st/mesa changes where: Reviewed-by: Marek Olšák <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src/compiler')
-rw-r--r--src/compiler/glsl/ir_set_program_inouts.cpp12
-rw-r--r--src/compiler/shader_info.c1
2 files changed, 6 insertions, 7 deletions
diff --git a/src/compiler/glsl/ir_set_program_inouts.cpp b/src/compiler/glsl/ir_set_program_inouts.cpp
index d693b660cbf..9a33d56d881 100644
--- a/src/compiler/glsl/ir_set_program_inouts.cpp
+++ b/src/compiler/glsl/ir_set_program_inouts.cpp
@@ -24,13 +24,13 @@
/**
* \file ir_set_program_inouts.cpp
*
- * Sets the inputs_read and OutputsWritten of Mesa programs.
+ * Sets the inputs_read and outputs_written of Mesa programs.
*
* Mesa programs (gl_program, not gl_shader_program) have a set of
* flags indicating which varyings are read and written. Computing
* which are actually read from some sort of backend code can be
* tricky when variable array indexing involved. So this pass
- * provides support for setting inputs_read and OutputsWritten right
+ * provides support for setting inputs_read and outputs_written right
* from the GLSL IR.
*/
@@ -83,10 +83,10 @@ mark(struct gl_program *prog, ir_variable *var, int offset, int len,
{
/* As of GLSL 1.20, varyings can only be floats, floating-point
* vectors or matrices, or arrays of them. For Mesa programs using
- * inputs_read/OutputsWritten, everything but matrices uses one
+ * inputs_read/outputs_written, everything but matrices uses one
* slot, while matrices use a slot per column. Presumably
* something doing a more clever packing would use something other
- * than inputs_read/OutputsWritten.
+ * than inputs_read/outputs_written.
*/
for (int i = 0; i < len; i++) {
@@ -130,7 +130,7 @@ mark(struct gl_program *prog, ir_variable *var, int offset, int len,
if (is_patch_generic) {
prog->PatchOutputsWritten |= bitfield;
} else if (!var->data.read_only) {
- prog->OutputsWritten |= bitfield;
+ prog->info.outputs_written |= bitfield;
if (var->data.index > 0)
prog->SecondaryOutputsWritten |= bitfield;
}
@@ -427,7 +427,7 @@ do_set_program_inouts(exec_list *instructions, struct gl_program *prog,
ir_set_program_inouts_visitor v(prog, shader_stage);
prog->info.inputs_read = 0;
- prog->OutputsWritten = 0;
+ prog->info.outputs_written = 0;
prog->SecondaryOutputsWritten = 0;
prog->OutputsRead = 0;
prog->PatchInputsRead = 0;
diff --git a/src/compiler/shader_info.c b/src/compiler/shader_info.c
index df1abdd2e7a..355bee0f040 100644
--- a/src/compiler/shader_info.c
+++ b/src/compiler/shader_info.c
@@ -30,7 +30,6 @@ copy_shader_info(const struct gl_shader_program *shader_prog,
{
shader_info *info = &sh->Program->info;
- info->outputs_written = sh->Program->OutputsWritten;
info->outputs_read = sh->Program->OutputsRead;
info->patch_inputs_read = sh->Program->PatchInputsRead;
info->patch_outputs_written = sh->Program->PatchOutputsWritten;