From 7983ed5f657e71a52735dbee046adcbe1a0ab373 Mon Sep 17 00:00:00 2001 From: Timothy Arceri Date: Tue, 20 Dec 2016 09:44:20 +1100 Subject: [PATCH] glsl: set InnerCoverage directly in gl_program Also move out of the shared gl_shader_info. Reviewed-by: Lionel Landwerlin --- src/compiler/glsl/glsl_parser_extras.cpp | 2 +- src/compiler/glsl/linker.cpp | 3 +-- src/mesa/main/mtypes.h | 3 +-- src/mesa/main/shaderapi.c | 1 - 4 files changed, 3 insertions(+), 6 deletions(-) diff --git a/src/compiler/glsl/glsl_parser_extras.cpp b/src/compiler/glsl/glsl_parser_extras.cpp index 063ca45..a6b695c 100644 --- a/src/compiler/glsl/glsl_parser_extras.cpp +++ b/src/compiler/glsl/glsl_parser_extras.cpp @@ -1815,7 +1815,7 @@ set_shader_inout_layout(struct gl_shader *shader, shader->ARB_fragment_coord_conventions_enable = state->ARB_fragment_coord_conventions_enable; shader->EarlyFragmentTests = state->fs_early_fragment_tests; - shader->info.InnerCoverage = state->fs_inner_coverage; + shader->InnerCoverage = state->fs_inner_coverage; shader->PostDepthCoverage = state->fs_post_depth_coverage; shader->BlendSupport = state->fs_blend_support; break; diff --git a/src/compiler/glsl/linker.cpp b/src/compiler/glsl/linker.cpp index 2bb080a..35f1d8b 100644 --- a/src/compiler/glsl/linker.cpp +++ b/src/compiler/glsl/linker.cpp @@ -1878,8 +1878,7 @@ link_fs_inout_layout_qualifiers(struct gl_shader_program *prog, linked_shader->Program->info.fs.early_fragment_tests |= shader->EarlyFragmentTests; - linked_shader->info.InnerCoverage |= - shader->info.InnerCoverage; + linked_shader->Program->info.fs.inner_coverage |= shader->InnerCoverage; linked_shader->Program->info.fs.post_depth_coverage |= shader->PostDepthCoverage; diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index d0e721e..d036958 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -2242,8 +2242,6 @@ struct gl_subroutine_function */ struct gl_shader_info { - bool InnerCoverage; - struct { /** Global xfb_stride out qualifier if any */ GLuint BufferStride[MAX_FEEDBACK_BUFFERS]; @@ -2430,6 +2428,7 @@ struct gl_shader bool uses_gl_fragcoord; bool PostDepthCoverage; + bool InnerCoverage; /** * Fragment shader state from GLSL 1.50 layout qualifiers. diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c index 2a7f0a2..c87ba09 100644 --- a/src/mesa/main/shaderapi.c +++ b/src/mesa/main/shaderapi.c @@ -2232,7 +2232,6 @@ _mesa_copy_linked_program_data(const struct gl_shader_program *src, } case MESA_SHADER_FRAGMENT: { dst->info.fs.depth_layout = src->FragDepthLayout; - dst->info.fs.inner_coverage = dst_sh->info.InnerCoverage; break; } case MESA_SHADER_COMPUTE: { -- 2.7.4