diff options
author | Jason Ekstrand <[email protected]> | 2016-05-31 20:16:01 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2016-06-03 19:29:28 -0700 |
commit | 9fa958e95b9ffd61283d20d5d14a0ac007c1def7 (patch) | |
tree | 24dfd691b7933940c65147c22030b61b43f2ea45 /src/intel/vulkan/gen8_pipeline.c | |
parent | 66bd2e1133baae35c38272bc8728cee631bcbefa (diff) |
anv/pipeline: Add support for early depth stencil
Signed-off-by: Jason Ekstrand <[email protected]>
Reviewed-by: Kenneth Graunke <[email protected]>
Cc: "12.0" <[email protected]>
Diffstat (limited to 'src/intel/vulkan/gen8_pipeline.c')
-rw-r--r-- | src/intel/vulkan/gen8_pipeline.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/intel/vulkan/gen8_pipeline.c b/src/intel/vulkan/gen8_pipeline.c index 77c81f42106..1300c0d1dff 100644 --- a/src/intel/vulkan/gen8_pipeline.c +++ b/src/intel/vulkan/gen8_pipeline.c @@ -329,10 +329,17 @@ genX(graphics_pipeline_create)( wm.StatisticsEnable = true; wm.LineEndCapAntialiasingRegionWidth = _05pixels; wm.LineAntialiasingRegionWidth = _10pixels; - wm.EarlyDepthStencilControl = NORMAL; wm.ForceThreadDispatchEnable = NORMAL; wm.PointRasterizationRule = RASTRULE_UPPER_RIGHT; + if (wm_prog_data && wm_prog_data->early_fragment_tests) { + wm.EarlyDepthStencilControl = PREPS; + } else if (wm_prog_data && wm_prog_data->has_side_effects) { + wm.EarlyDepthStencilControl = PSEXEC; + } else { + wm.EarlyDepthStencilControl = NORMAL; + } + wm.BarycentricInterpolationMode = pipeline->ps_ksp0 == NO_KERNEL ? 0 : wm_prog_data->barycentric_interp_modes; } |