diff options
author | Francisco Jerez <[email protected]> | 2016-07-19 20:33:46 -0700 |
---|---|---|
committer | Francisco Jerez <[email protected]> | 2016-08-25 18:33:29 -0700 |
commit | 97ac3eba58a7d11e171475f4a209cfdb3578b21d (patch) | |
tree | d6edf8186e184a6cb04abd2cb63825c863e56c71 /src/compiler/glsl/glsl_to_nir.cpp | |
parent | 00c72acba5a98965622000d949b6835f28a9d71a (diff) |
nir: Pass through fb_fetch_output and OutputsRead from GLSL IR.
The NIR representation of framebuffer fetch is the same as the GLSL
IR's until interface variables are lowered away, at which point it
will be translated to load output intrinsics. The GLSL-to-NIR pass
just needs to copy the bits over to the NIR program.
Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/compiler/glsl/glsl_to_nir.cpp')
-rw-r--r-- | src/compiler/glsl/glsl_to_nir.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/compiler/glsl/glsl_to_nir.cpp b/src/compiler/glsl/glsl_to_nir.cpp index d3cc5b44d64..3ac21966563 100644 --- a/src/compiler/glsl/glsl_to_nir.cpp +++ b/src/compiler/glsl/glsl_to_nir.cpp @@ -154,6 +154,7 @@ glsl_to_nir(const struct gl_shader_program *shader_prog, shader->info.inputs_read = sh->Program->InputsRead; shader->info.double_inputs_read = sh->Program->DoubleInputsRead; shader->info.outputs_written = sh->Program->OutputsWritten; + shader->info.outputs_read = sh->Program->OutputsRead; shader->info.patch_inputs_read = sh->Program->PatchInputsRead; shader->info.patch_outputs_written = sh->Program->PatchOutputsWritten; shader->info.system_values_read = sh->Program->SystemValuesRead; @@ -406,6 +407,7 @@ nir_visitor::visit(ir_variable *ir) var->data.image.restrict_flag = ir->data.image_restrict; var->data.image.format = ir->data.image_format; var->data.max_array_access = ir->data.max_array_access; + var->data.fb_fetch_output = ir->data.fb_fetch_output; var->num_state_slots = ir->get_num_state_slots(); if (var->num_state_slots > 0) { |