summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimothy Arceri <[email protected]>2016-11-22 19:47:48 +1100
committerTimothy Arceri <[email protected]>2017-01-19 17:05:26 +1100
commit3d41f4b9903b68b5a68eb3afc0c17143dbbb30f0 (patch)
treed7e554f10ceac113982a156a28d816f5bc610132
parent0a9d102ddc3af65a136a936ff4fb02bcc15377c0 (diff)
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 <[email protected]>
-rw-r--r--src/compiler/glsl/glsl_parser_extras.cpp2
-rw-r--r--src/compiler/glsl/linker.cpp8
-rw-r--r--src/mesa/main/mtypes.h3
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;
};