glsl: set outputs read directly in shader_info
authorTimothy Arceri <timothy.arceri@collabora.com>
Thu, 20 Oct 2016 05:17:23 +0000 (16:17 +1100)
committerTimothy Arceri <timothy.arceri@collabora.com>
Wed, 26 Oct 2016 03:29:36 +0000 (14:29 +1100)
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
src/compiler/glsl/ir_set_program_inouts.cpp
src/compiler/shader_info.c
src/mesa/main/mtypes.h

index 9a33d56d8814e73c9b4717659f6ce030d288b8bd..7cd5d0ca0c6a5f458f13bf7ffa81a956507a5144 100644 (file)
@@ -136,7 +136,7 @@ mark(struct gl_program *prog, ir_variable *var, int offset, int len,
          }
 
          if (var->data.fb_fetch_output)
-            prog->OutputsRead |= bitfield;
+            prog->info.outputs_read |= bitfield;
       }
    }
 }
@@ -429,7 +429,7 @@ do_set_program_inouts(exec_list *instructions, struct gl_program *prog,
    prog->info.inputs_read = 0;
    prog->info.outputs_written = 0;
    prog->SecondaryOutputsWritten = 0;
-   prog->OutputsRead = 0;
+   prog->info.outputs_read = 0;
    prog->PatchInputsRead = 0;
    prog->PatchOutputsWritten = 0;
    prog->SystemValuesRead = 0;
index 355bee0f04079668e3ce3b3b5fd302a82cf866ec..af8b6c2a1c7b030d728dae1d70f24ad7c7b45568 100644 (file)
@@ -30,7 +30,6 @@ copy_shader_info(const struct gl_shader_program *shader_prog,
 {
    shader_info *info = &sh->Program->info;
 
-   info->outputs_read = sh->Program->OutputsRead;
    info->patch_inputs_read = sh->Program->PatchInputsRead;
    info->patch_outputs_written = sh->Program->PatchOutputsWritten;
    info->system_values_read = sh->Program->SystemValuesRead;
index 0b8844c2165825738fc90cd0a0619cedb5c6b091..468d7544a9a885e0c17de83d0d55b2c7fd603465 100644 (file)
@@ -1923,7 +1923,6 @@ struct gl_program
    struct shader_info info;
 
    GLbitfield64 SecondaryOutputsWritten; /**< Subset of OutputsWritten outputs written with non-zero index. */
-   GLbitfield64 OutputsRead; /**< Bitmask of which output regs are read */
    GLbitfield PatchInputsRead;  /**< VAR[0..31] usage for patch inputs (user-defined only) */
    GLbitfield PatchOutputsWritten; /**< VAR[0..31] usage for patch outputs (user-defined only) */
    GLbitfield SystemValuesRead;   /**< Bitmask of SYSTEM_VALUE_x inputs used */