From 3d41f4b9903b68b5a68eb3afc0c17143dbbb30f0 Mon Sep 17 00:00:00 2001 From: Timothy Arceri Date: Tue, 22 Nov 2016 19:47:48 +1100 Subject: [PATCH] mesa/glsl: move pixel_center_integer 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 --- src/compiler/glsl/glsl_parser_extras.cpp | 2 +- src/compiler/glsl/linker.cpp | 8 +++----- src/mesa/main/mtypes.h | 3 +-- 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/compiler/glsl/glsl_parser_extras.cpp b/src/compiler/glsl/glsl_parser_extras.cpp index fe494235066..70bde069e7a 100644 --- a/src/compiler/glsl/glsl_parser_extras.cpp +++ b/src/compiler/glsl/glsl_parser_extras.cpp @@ -1810,7 +1810,7 @@ set_shader_inout_layout(struct gl_shader *shader, case MESA_SHADER_FRAGMENT: shader->redeclares_gl_fragcoord = state->fs_redeclares_gl_fragcoord; shader->uses_gl_fragcoord = state->fs_uses_gl_fragcoord; - shader->info.pixel_center_integer = state->fs_pixel_center_integer; + shader->pixel_center_integer = state->fs_pixel_center_integer; shader->origin_upper_left = state->fs_origin_upper_left; shader->ARB_fragment_coord_conventions_enable = state->ARB_fragment_coord_conventions_enable; diff --git a/src/compiler/glsl/linker.cpp b/src/compiler/glsl/linker.cpp index 6db48f9808b..5f96a7e7447 100644 --- a/src/compiler/glsl/linker.cpp +++ b/src/compiler/glsl/linker.cpp @@ -1829,7 +1829,7 @@ link_fs_inout_layout_qualifiers(struct gl_shader_program *prog, bool redeclares_gl_fragcoord = false; bool uses_gl_fragcoord = false; bool origin_upper_left = false; - linked_shader->info.pixel_center_integer = false; + bool pixel_center_integer = false; if (linked_shader->Stage != MESA_SHADER_FRAGMENT || (prog->data->Version < 150 && @@ -1859,8 +1859,7 @@ link_fs_inout_layout_qualifiers(struct gl_shader_program *prog, */ if (redeclares_gl_fragcoord && shader->redeclares_gl_fragcoord && (shader->origin_upper_left != origin_upper_left || - shader->info.pixel_center_integer != - linked_shader->info.pixel_center_integer)) { + shader->pixel_center_integer != pixel_center_integer)) { linker_error(prog, "fragment shader defined with conflicting " "layout qualifiers for gl_FragCoord\n"); } @@ -1874,8 +1873,7 @@ link_fs_inout_layout_qualifiers(struct gl_shader_program *prog, redeclares_gl_fragcoord = shader->redeclares_gl_fragcoord; uses_gl_fragcoord |= shader->uses_gl_fragcoord; origin_upper_left = shader->origin_upper_left; - linked_shader->info.pixel_center_integer = - shader->info.pixel_center_integer; + pixel_center_integer = shader->pixel_center_integer; } linked_shader->Program->info.fs.early_fragment_tests |= diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index cf06674ebfe..7b8be09d778 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -2245,8 +2245,6 @@ struct gl_shader_info bool PostDepthCoverage; bool InnerCoverage; - bool pixel_center_integer; - struct { /** Global xfb_stride out qualifier if any */ GLuint BufferStride[MAX_FEEDBACK_BUFFERS]; @@ -2436,6 +2434,7 @@ struct gl_shader * Fragment shader state from GLSL 1.50 layout qualifiers. */ bool origin_upper_left; + bool pixel_center_integer; struct gl_shader_info info; }; -- 2.11.0