On Wed,  7 Dec 2011 11:09:16 -0800, Paul Berry <stereotype...@gmail.com> wrote:
> In Gen6, transform feedback is accomplished by having the geometry
> shader send vertex data to the data port using "Streamed Vertex Buffer
> Write" messages, while simultaneously passing vertices through to the
> rest of the graphics pipeline (if rendering is enabled).

> +   if (intel->gen >= 7) {
> +      /* On Gen7 and later, we don't use GS (yet). */
> +      key->need_gs_prog = false;
> +   } else if (intel->gen == 6) {
> +      /* On Gen6, GS is used for transform feedback. */
> +      key->need_gs_prog = ctx->TransformFeedback.CurrentObject->Active;

I like to see state accesses associated with a flag having a comment
like /* _NEW_TRANSFORM_FEEDBACK */ right above them.  This means that
when you're trying to manually check that state flags are correct, you
can do one scan of the code looking to see if the nearest /*
_NEW_WHATEVER */ comment is the right thing for each piece of state
being accessed, and another pass to go find the state atom and make sure
that every _NEW_WHATEVER comment in its update function is reflected in
it.

It's messy, but without some other free-per-draw-call way to get the
flags next to the code, this is the only way I've found to keep some
sanity while trying to debug statechanges.  Maybe when we build the
valgrind tool I'll stop caring.

I haven't reviewed the rest of these changes, but they're generally:

Acked-by: Eric Anholt <e...@anholt.net>

Attachment: pgpj1dGmxAs8C.pgp
Description: PGP signature

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to