diff options
author | Timothy Arceri <[email protected]> | 2016-11-22 18:37:06 +1100 |
---|---|---|
committer | Timothy Arceri <[email protected]> | 2017-01-19 17:05:26 +1100 |
commit | ceeedb9bb0f935569f4afdfef716154f612298e2 (patch) | |
tree | ce9c311a1658bcf58b9a9c8f22ea6be803de1447 /src/compiler | |
parent | 66a6050ad8a56d4d04624870e6845579bd0581b2 (diff) |
mesa/glsl: move uses_gl_fragcoord to gl_shader
This is only used by gl_linked_shader as a temp during linking
so use a temp there instead.
Reviewed-by: Lionel Landwerlin <[email protected]>
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/glsl/glsl_parser_extras.cpp | 2 | ||||
-rw-r--r-- | src/compiler/glsl/linker.cpp | 12 |
2 files changed, 6 insertions, 8 deletions
diff --git a/src/compiler/glsl/glsl_parser_extras.cpp b/src/compiler/glsl/glsl_parser_extras.cpp index 99bdfcc3408..afb7260ddda 100644 --- a/src/compiler/glsl/glsl_parser_extras.cpp +++ b/src/compiler/glsl/glsl_parser_extras.cpp @@ -1809,7 +1809,7 @@ set_shader_inout_layout(struct gl_shader *shader, case MESA_SHADER_FRAGMENT: shader->redeclares_gl_fragcoord = state->fs_redeclares_gl_fragcoord; - shader->info.uses_gl_fragcoord = state->fs_uses_gl_fragcoord; + shader->uses_gl_fragcoord = state->fs_uses_gl_fragcoord; shader->info.pixel_center_integer = state->fs_pixel_center_integer; shader->info.origin_upper_left = state->fs_origin_upper_left; shader->ARB_fragment_coord_conventions_enable = diff --git a/src/compiler/glsl/linker.cpp b/src/compiler/glsl/linker.cpp index 68761518290..332455430a2 100644 --- a/src/compiler/glsl/linker.cpp +++ b/src/compiler/glsl/linker.cpp @@ -1827,7 +1827,7 @@ link_fs_inout_layout_qualifiers(struct gl_shader_program *prog, unsigned num_shaders) { bool redeclares_gl_fragcoord = false; - linked_shader->info.uses_gl_fragcoord = false; + bool uses_gl_fragcoord = false; linked_shader->info.origin_upper_left = false; linked_shader->info.pixel_center_integer = false; @@ -1845,9 +1845,9 @@ link_fs_inout_layout_qualifiers(struct gl_shader_program *prog, * that have a static use gl_FragCoord." */ if ((redeclares_gl_fragcoord && !shader->redeclares_gl_fragcoord && - shader->info.uses_gl_fragcoord) + shader->uses_gl_fragcoord) || (shader->redeclares_gl_fragcoord && !redeclares_gl_fragcoord && - linked_shader->info.uses_gl_fragcoord)) { + uses_gl_fragcoord)) { linker_error(prog, "fragment shader defined with conflicting " "layout qualifiers for gl_FragCoord\n"); } @@ -1871,11 +1871,9 @@ link_fs_inout_layout_qualifiers(struct gl_shader_program *prog, * are multiple redeclarations, all the fields except uses_gl_fragcoord * are already known to be the same. */ - if (shader->redeclares_gl_fragcoord || shader->info.uses_gl_fragcoord) { + if (shader->redeclares_gl_fragcoord || shader->uses_gl_fragcoord) { redeclares_gl_fragcoord = shader->redeclares_gl_fragcoord; - linked_shader->info.uses_gl_fragcoord = - linked_shader->info.uses_gl_fragcoord || - shader->info.uses_gl_fragcoord; + uses_gl_fragcoord |= shader->uses_gl_fragcoord; linked_shader->info.origin_upper_left = shader->info.origin_upper_left; linked_shader->info.pixel_center_integer = |