[Mesa-dev] [PATCH] i965/gen8: fix cull distance emission for tessellation shaders.

Dave Airlie airlied at gmail.com
Tue Jun 7 00:29:09 UTC 2016


From: Dave Airlie <airlied at redhat.com>

This fixes some cases of:
GL45-CTS.cull_distance.functional
on Skylake.

Cc: "12.0" <mesa-stable at lists.freedesktop.org>
Signed-off-by: Dave Airlie <airlied at redhat.com>
---
 src/mesa/drivers/dri/i965/gen8_ds_state.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/gen8_ds_state.c b/src/mesa/drivers/dri/i965/gen8_ds_state.c
index 95582ac..0219d07 100644
--- a/src/mesa/drivers/dri/i965/gen8_ds_state.c
+++ b/src/mesa/drivers/dri/i965/gen8_ds_state.c
@@ -69,9 +69,11 @@ gen8_upload_ds_state(struct brw_context *brw)
                  GEN7_DS_SIMD8_DISPATCH_ENABLE : 0) |
                 (tes_prog_data->domain == BRW_TESS_DOMAIN_TRI ?
                  GEN7_DS_COMPUTE_W_COORDINATE_ENABLE : 0));
-      OUT_BATCH(SET_FIELD(vue_prog_data->cull_distance_mask |
-                          ctx->Transform.ClipPlanesEnabled,
-                          GEN8_DS_USER_CLIP_DISTANCE));
+      OUT_BATCH(SET_FIELD(ctx->Transform.ClipPlanesEnabled,
+                          GEN8_DS_USER_CLIP_DISTANCE) |
+                SET_FIELD(vue_prog_data->cull_distance_mask,
+                          GEN8_DS_USER_CULL_DISTANCE));
+
 
       if (brw->gen >= 9) {
          OUT_BATCH(0);
-- 
2.7.4



More information about the mesa-dev mailing list