summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2011-12-22 16:23:46 -0800
committerEric Anholt <[email protected]>2011-12-23 22:07:20 -0800
commite71375d375e2cc0d0a06fec6e7adbd1dd3a6a2fc (patch)
tree2f6cb9e82c033be2f78176a1cc163a227e376b3f /src
parentc8223d8c8d267f6d5648e1d44886a0c05f9d79fc (diff)
i965/gen7: Fix feedback for flat-shaded tristrips versus provoking vertex.
Fixes piglit tesselation triangle_strip flat_last. Reviewed-by: Kenneth Graunke <[email protected]> (v1) Reviewed-by: Paul Berry <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/i965/gen7_sol_state.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/gen7_sol_state.c b/src/mesa/drivers/dri/i965/gen7_sol_state.c
index 3b6fc8ecb16..734686617b4 100644
--- a/src/mesa/drivers/dri/i965/gen7_sol_state.c
+++ b/src/mesa/drivers/dri/i965/gen7_sol_state.c
@@ -187,6 +187,10 @@ upload_3dstate_streamout(struct brw_context *brw, bool active,
dw1 |= SO_FUNCTION_ENABLE;
dw1 |= SO_STATISTICS_ENABLE;
+ /* _NEW_LIGHT */
+ if (ctx->Light.ProvokingVertex != GL_FIRST_VERTEX_CONVENTION)
+ dw1 |= SO_REORDER_TRAILING;
+
for (i = 0; i < 4; i++) {
if (xfb_obj->Buffers[i]) {
dw1 |= SO_BUFFER_ENABLE(i);
@@ -240,6 +244,7 @@ upload_sol_state(struct brw_context *brw)
const struct brw_tracked_state gen7_sol_state = {
.dirty = {
.mesa = (_NEW_RASTERIZER_DISCARD |
+ _NEW_LIGHT |
_NEW_TRANSFORM_FEEDBACK |
_NEW_TRANSFORM),
.brw = (BRW_NEW_BATCH |