[Mesa-dev] [PATCH 2/3] nir: Add NIR plumbing ARB_post_depth_coverage for i965 (gen9+).

Plamena Manolova plamena.manolova at intel.com
Thu Nov 17 20:27:29 UTC 2016


This extension allows the fragment shader to control whether values in
gl_SampleMaskIn[] reflect the coverage after application of the early
depth and stencil tests.

Signed-off-by: Plamena Manolova <plamena.manolova at intel.com>
---
 src/compiler/shader_info.h | 1 +
 src/mesa/main/shaderapi.c  | 1 +
 2 files changed, 2 insertions(+)

diff --git a/src/compiler/shader_info.h b/src/compiler/shader_info.h
index f0dfecc..760a899 100644
--- a/src/compiler/shader_info.h
+++ b/src/compiler/shader_info.h
@@ -113,6 +113,7 @@ typedef struct shader_info {
           * ARB_shader_image_load_store.
           */
          bool early_fragment_tests;
+         bool post_depth_coverage;
 
          /** gl_FragDepth layout for ARB_conservative_depth. */
          enum gl_frag_depth_layout depth_layout;
diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c
index 5db4137..9b35395 100644
--- a/src/mesa/main/shaderapi.c
+++ b/src/mesa/main/shaderapi.c
@@ -2201,6 +2201,7 @@ _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.early_fragment_tests = dst_sh->info.EarlyFragmentTests;
+      dst->info.fs.post_depth_coverage = dst_sh->info.PostDepthCoverage;
       break;
    }
    case MESA_SHADER_COMPUTE: {
-- 
2.7.4



More information about the mesa-dev mailing list