i965/gen6/xfb: handle case where transform feedback is not active

When the SVBI Payload Enable is false I guess the register R1.4
which contains the Maximum Streamed Vertex Buffer Index is filled by zero
and GS stops to write transform feedback when the transform feedback
is not active.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107579
Signed-off-by: Andrii Simiklit <andrii.simiklit@globallogic.com>
Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
(cherry picked from commit 1b0df8a460)
This commit is contained in:
Andrii Simiklit 2018-08-15 18:20:32 +03:00 committed by Dylan Baker
parent 7a9b95bd7e
commit 8aba522f49

View file

@ -2696,7 +2696,7 @@ genX(upload_gs_state)(struct brw_context *brw)
#if GEN_GEN < 7
gs.SOStatisticsEnable = true;
if (gs_prog->info.has_transform_feedback_varyings)
gs.SVBIPayloadEnable = true;
gs.SVBIPayloadEnable = _mesa_is_xfb_active_and_unpaused(ctx);
/* GEN6_GS_SPF_MODE and GEN6_GS_VECTOR_MASK_ENABLE are enabled as it
* was previously done for gen6.