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 <lionel.g.landwerlin@intel.com>
This commit is contained in:
@@ -1809,7 +1809,7 @@ set_shader_inout_layout(struct gl_shader *shader,
|
|||||||
|
|
||||||
case MESA_SHADER_FRAGMENT:
|
case MESA_SHADER_FRAGMENT:
|
||||||
shader->redeclares_gl_fragcoord = state->fs_redeclares_gl_fragcoord;
|
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.pixel_center_integer = state->fs_pixel_center_integer;
|
||||||
shader->info.origin_upper_left = state->fs_origin_upper_left;
|
shader->info.origin_upper_left = state->fs_origin_upper_left;
|
||||||
shader->ARB_fragment_coord_conventions_enable =
|
shader->ARB_fragment_coord_conventions_enable =
|
||||||
|
@@ -1827,7 +1827,7 @@ link_fs_inout_layout_qualifiers(struct gl_shader_program *prog,
|
|||||||
unsigned num_shaders)
|
unsigned num_shaders)
|
||||||
{
|
{
|
||||||
bool redeclares_gl_fragcoord = false;
|
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.origin_upper_left = false;
|
||||||
linked_shader->info.pixel_center_integer = 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."
|
* that have a static use gl_FragCoord."
|
||||||
*/
|
*/
|
||||||
if ((redeclares_gl_fragcoord && !shader->redeclares_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 &&
|
|| (shader->redeclares_gl_fragcoord && !redeclares_gl_fragcoord &&
|
||||||
linked_shader->info.uses_gl_fragcoord)) {
|
uses_gl_fragcoord)) {
|
||||||
linker_error(prog, "fragment shader defined with conflicting "
|
linker_error(prog, "fragment shader defined with conflicting "
|
||||||
"layout qualifiers for gl_FragCoord\n");
|
"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 multiple redeclarations, all the fields except uses_gl_fragcoord
|
||||||
* are already known to be the same.
|
* 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;
|
redeclares_gl_fragcoord = shader->redeclares_gl_fragcoord;
|
||||||
linked_shader->info.uses_gl_fragcoord =
|
uses_gl_fragcoord |= shader->uses_gl_fragcoord;
|
||||||
linked_shader->info.uses_gl_fragcoord ||
|
|
||||||
shader->info.uses_gl_fragcoord;
|
|
||||||
linked_shader->info.origin_upper_left =
|
linked_shader->info.origin_upper_left =
|
||||||
shader->info.origin_upper_left;
|
shader->info.origin_upper_left;
|
||||||
linked_shader->info.pixel_center_integer =
|
linked_shader->info.pixel_center_integer =
|
||||||
|
@@ -2242,7 +2242,6 @@ struct gl_subroutine_function
|
|||||||
*/
|
*/
|
||||||
struct gl_shader_info
|
struct gl_shader_info
|
||||||
{
|
{
|
||||||
bool uses_gl_fragcoord;
|
|
||||||
bool PostDepthCoverage;
|
bool PostDepthCoverage;
|
||||||
bool InnerCoverage;
|
bool InnerCoverage;
|
||||||
|
|
||||||
@@ -2435,6 +2434,7 @@ struct gl_shader
|
|||||||
bool ARB_fragment_coord_conventions_enable;
|
bool ARB_fragment_coord_conventions_enable;
|
||||||
|
|
||||||
bool redeclares_gl_fragcoord;
|
bool redeclares_gl_fragcoord;
|
||||||
|
bool uses_gl_fragcoord;
|
||||||
|
|
||||||
struct gl_shader_info info;
|
struct gl_shader_info info;
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user