glsl: enable early_fragment_tests implicitly with post_depth_coverage
authorIago Toral Quiroga <itoral@igalia.com>
Wed, 22 Feb 2017 08:06:31 +0000 (09:06 +0100)
committerIago Toral Quiroga <itoral@igalia.com>
Thu, 23 Feb 2017 10:21:44 +0000 (11:21 +0100)
commit42b9057447bde6a48c948ed71d23e935c250cef5
tree14fa358fd171ebcd7c89c1202bf81def3882b8a8
parent6ca4347c827c9b4c577bc04587a5c0070f5b5339
glsl: enable early_fragment_tests implicitly with post_depth_coverage

From ARB_post_depth_coverage:

   "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.  This feature can be enabled with the following
    layout qualifier in the fragment shader:

       layout(post_depth_coverage) in;

    Use of this feature implicitly enables early fragment tests."

And a bit later it also adds:

   "early_fragment_tests" requests that fragment tests be performed before
    fragment shader execution, as described in section 15.2.4 "Early Fragment
    Tests" of the OpenGL Specification. If neither this nor post_depth_coverage
    are declared, per-fragment tests will be performed after fragment shader
    execution."

Fixes:
GL45-CTS.post_depth_coverage_tests.PostDepthSampleMask

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
src/compiler/glsl/linker.cpp