[Mesa-dev] Ivybridge support for ARB_transform_feedback2

Kenneth Graunke kenneth at whitecape.org
Fri Oct 18 08:09:28 CEST 2013

Here's my implementation of ARB_transform_feedback2.  I believe it's
complete; it passes all of our Piglit tests and a lot of Intel's
oglconform tests.

This should work out of the box on Ivybridge and Baytrail.  It won't
work on Haswell at the moment, due to restrictions on register writes
(to be solved in a future kernel version).  Patch 9 will need to be
replaced with something that detects whether or not we can write
registers from userspace batchbuffers.

In the meantime, I figured I'd send out the rest for review.

Porting this back to Sandybridge is probably doable, but annoying.
Sandybridge doesn't have the MI_LOAD_REGISTER_MEM command, so we'd have
to map the buffers and use MI_LOAD_REGISTER_IMM.  Seems pretty gross.
Plus, transform feedback is done very differently pre-Ivybridge.  I'm
not sure it's worth it, seeing as it's a GL 4.0 feature.

More information about the mesa-dev mailing list