!UPSTREAM i965: Use software primitive restart when transform feedback active.

TODO: NAK this patch, since Eric's "i965: Skip resetting SOL offsets at batch start when contexts are present." should take care of it.

When transform feedback is active, the driver manually counts the
number of primitives that run through the pipeline, so that if a batch
buffer flush happens, the next batch buffer can pick up transform
feedback where the last batch buffer left off.  Hardware-accelerated
primitive restart interferes with this process (because it makes the
primitive count depend not just on the number of vertices entering the
pipeline, but also on the contents of the index buffer).  So, when
transform feedback is active, we need to fall back to the software
implementation of primitive restart.

Fixes piglit test "spec/!OpenGL 3.1/primitive-restart-xfb flush".

NOTE: This is a candidate for stable release branches.

Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>